переместить CALayer (добавить анимацию) - PullRequest
8 голосов
/ 29 ноября 2011

хорошо, у меня есть CALayer layer, и я хотел бы переместить его с помощью CADisplaylink. Нравится:

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

, но я не могу использовать center или position для слоя. Вот моя проблема, я хочу заставить его двигаться, как будто это был uiimageview.

1 Ответ

13 голосов
/ 29 ноября 2011

Для перемещения слоя попробуйте использовать этот метод

-(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"];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...