move a CALayer (add animation)

2019-06-17 01:34发布

well I have a CALayer layer and I would like to move it, with a CADisplaylink. Like :

layer.center=CGPointMake(layer.center.x + 10, layer.center.y + 10);

but I can't use center or position for the layer.Here is my problem, I want to make it move like it was a uiimageview.

1条回答
混吃等死
2楼-- · 2019-06-17 02:15

To move layer try to use this method

-(void)moveLayer:(CALayer*)layer to:(CGPoint)point{
    CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"position"];
    animation.fromValue = [layer valueForKey:@"position"];
    animation.toValue = [NSValue valueWithCGPoint:point];
    layer.position = point;
    [layer addAnimation:animation forKey:@"position"];
}
查看更多
登录 后发表回答