iOS 动态画圆圈

原创 2015年07月09日 10:57:57

-(void)setUpAnimationLayer

{

    //因为会多次点击,所以要将该图层移除,并且指针置空

    [self.animationLayer removeFromSuperlayer];

    self.animationLayer = nil;

    

    UIBezierPath * path = [UIBezierPath bezierPath];

    //参数依次是:圆心坐标,半径,开始弧度,结束弧度   画线方向:yes为顺时针,no为逆时针

    [path addArcWithCenter:CGPointMake(50, 100) radius:50 startAngle:0 endAngle:2*M_PI clockwise:TRUE];

    

    CAShapeLayer * pathLayer = [CAShapeLayer layer];

    pathLayer.path = path.CGPath;

    pathLayer.strokeColor = [[UIColor blueColor]CGColor];//画线颜色

    pathLayer.fillColor = [[UIColor redColor]CGColor];//填充颜色

    pathLayer.lineJoin = kCALineJoinRound;

    pathLayer.lineWidth = 6.0f;

    [self.view.layer addSublayer:pathLayer];

    [self setAnimationLayer:pathLayer];//pathLayer赋给属性animationLayer

}


- (IBAction)btnClick:(id)sender {


    [self setUpAnimationLayer];

    

    [self.animationLayer removeAllAnimations];//每次将之前的动画都清除了

    

    //     keyPath = strokeEnd  动画的fromValue = 0toValue = 1                   表示 这里我们分3个点说明动画的顺序  strokeEnd从结尾开始清除 首先整条路径先清除后2/3,接着清除1/3 效果就是正方向画出路径

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

    pathAnimation.duration = 10.0;

    pathAnimation.fromValue = @(0);

    pathAnimation.toValue = @(1);

    [self.animationLayer addAnimation:pathAnimation forKey:@"strokeEnd"];

}


相关文章推荐

IOS利用UIBezierPath画动画圆

- (void)drawRoundView:(CGPoint)centerPoint withStartAngle:(CGFloat)startAngle withEndAngle:(CGFloat)...

CAShapeLayer动画(画圆效果)

CAShapeLayer比CALayer做动画更加复杂, 普通CALayer在被初始化时是需要给一个frame值的,这个frame值一般都与给定view的bounds值一致,它本身是有形状的,而且是...

IOS用CGContextRef画各种图形(文字、圆、直线、弧线、矩形、扇形、椭圆、三角形、圆角矩形、贝塞尔曲线、图片)

首先了解一下CGContextRef: An opaque type that represents a Quartz 2D drawing environment. Graphics Conte...

iOS开发中的基于CAShapeLayer和贝塞尔曲线的圆形进度条动画

先简单的介绍下CAShapeLayer 1,CAShapeLayer继承自CALayer,可使用CALayer的所有属性 2,CAShapeLayer需要和贝塞尔曲线配合使用才有意义。 Shap...

iOS UIBezierPath 通过贝塞尔曲线画圆环 创建一个环形进度指示器

UIBezierPath *path = [UIBezierPath bezierPathWithArcCenter:CGPointMake(100, 100) radius:30 startAngl...

iOS动画效果、绘制图形

文章转载自:http://www.cnblogs.com/kenshincui/p/3972100.html 概览 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天...

iOS 如何画圆

在iOS开发的时候,我们可以借助UIBezierPath和CAShapeLayer这两个类来实现画圆的需求,另外我们还可以给圆设置颜色、宽度,设置画圆的动画可以借助CABasicAnimation来实...
  • maiwc
  • maiwc
  • 2016年04月25日 09:58
  • 2506

IOS开发—IOS绘制圆,直线,弧线,矩形,扇形,三角形,贝塞尔等图形

IOS绘制圆,直线,弧线,矩形,扇形,三角形,贝塞尔等图形 贝塞尔曲线详细介绍
  • Lotheve
  • Lotheve
  • 2015年09月13日 20:27
  • 4089

ios 基本图形的绘制

基本图形的绘制 包括: 代码画线,画文字 图片 裁剪 重绘  简单动画 当自定义view的时候 系统会自动调用drawRect 方法 画线 - (void)drawRect:(CGRect)rect ...

IOS开发-画曲线画弧线画圆

(1)导入QuartzCore框架 (2)自定义一个view,然后输入下面的代码:- (void)drawRect:(CGRect)rect { [self drawArc1]; }/** ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS 动态画圆圈
举报原因:
原因补充:

(最多只允许输入30个字)