CAShapeLayer的strokeStart和strokeEnd属性

1 keyPath = strokeStart  动画的fromValue = 0,toValue = 1

     表示从路径的0位置画到1 怎么画是按照清除开始的位置也就是清除0 一直清除到1 效果就是一条路径慢慢的消失

     2 keyPath = strokeStart  动画的fromValue = 1,toValue = 0

     表示从路径的1位置画到0 怎么画是按照清除开始的位置也就是1 这样开始的路径是空的(即都被清除掉了)一直清除到0 效果就是一条路径被反方向画出来

     

     3 keyPath = strokeEnd  动画的fromValue = 0,toValue = 1

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

     

     3 keyPath = strokeEnd  动画的fromValue = 1,toValue = 0

     效果就是反方向路径慢慢消失

注释: 动画的0-1(fromValue = 0,toValue = 1) 或1-0 (fromValue = 1,toValue = 0) 表示执行的方向 和路径的范围。

_chartLine = [CAShapeLayer layer];

  UIBezierPath * bezierLine = [UIBezierPath bezierPath];

_chartLine.path =  bezierLine.CGPath;

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

    pathAnimation.duration = 1.5;

    pathAnimation.timingFunction = [CAMediaTimingFunctionfunctionWithName:kCAMediaTimingFunctionEaseInEaseOut];

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

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

    pathAnimation.autoreverses = NO;

    [_chartLine addAnimation:pathAnimation forKey:@"strokeEndAnimation"];

    _chartLine.strokeEnd = 2.0;

你可能感兴趣的:(iOS)