CAMediaTimingFunction :https://github.com/YouXianMing/Tween-o-Matic-CN?spm=5176.100239.blogcont29568.8.hA2dRk 設置動畫的速度變化
- (void)viewDidLoad {
[super viewDidLoad];
// 初始化layer
CALayer *layer? ? ? ? = [CALayer layer];
layer.frame? ? ? ? ? = CGRectMake(50, 50, 200, 2);
layer.backgroundColor = [UIColor blackColor].CGColor;
// 終點位置
CGPoint endPosition = CGPointMake(layer.position.x, layer.position.y + 200);
// 動畫
CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"position"];
animation.fromValue? ? ? ? = [NSValue valueWithCGPoint:layer.position];
animation.toValue? ? ? ? ? = [NSValue valueWithCGPoint:endPosition];
animation.timingFunction? ? = [CAMediaTimingFunction functionWithControlPoints:0.20 :0.03 :0.13 :1.00];
layer.position? ? ? ? ? ? ? = endPosition;
animation.duration? ? ? ? ? = 1.f;
// 添加動畫
[layer addAnimation:animation forKey:nil];
// 添加layer
[self.view.layer addSublayer:layer];
}