码迷,mamicode.com
首页 > 其他好文 > 详细

CAShapeLayer使用

时间:2017-04-19 10:22:12      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:cap   with   idt   cab   贝塞尔   fill   init   har   获取   

   UIView *showView = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];

    [self.view addSubview:showView];

    showView.backgroundColor = [UIColor whiteColor];

    

    UIBezierPath *path = [UIBezierPath bezierPathWithArcCenter:CGPointMake(100 / 2.f, 100 / 2.f)

                                                        radius:100 / 2.f

                                                    startAngle:0

                                                      endAngle:1.5*M_PI

                                                     clockwise:YES];

    

    CAShapeLayer *layer = [CAShapeLayer layer];

    layer.frame         = showView.bounds;                // 与showView的frame一致

    layer.strokeColor   = [UIColor greenColor].CGColor;   // 边缘线的颜色

    layer.fillColor     = [UIColor greenColor].CGColor;   // 闭环填充的颜色

    layer.lineCap       = kCALineCapRound;               // 边缘线的类型

    layer.path          = path.CGPath;                    // 从贝塞尔曲线获取到形状

    layer.lineWidth     = 9.0f;                           // 线条宽度

    layer.strokeStart   = 0.0f;

    layer.strokeEnd     = 0.0f;

    

    [showView.layer addSublayer:layer];

 

    CABasicAnimation *pathAnimation = [CABasicAnimation animationWithKeyPath:@"strokeEnd"];

    pathAnimation.duration = 5.0;

    pathAnimation.fromValue = [NSNumber numberWithFloat:0.0f];

    pathAnimation.toValue = [NSNumber numberWithFloat:1.0f];

    [layer addAnimation:pathAnimation forKey:nil];

CAShapeLayer使用

标签:cap   with   idt   cab   贝塞尔   fill   init   har   获取   

原文地址:http://www.cnblogs.com/feng9exe/p/6731304.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!