在将图层添加到超级图层后,在核心动画中执行动画

时间:2011-12-07 17:57:05

标签: ios animation core-animation

我有以下代码:

// create sublayer
sublayer.position = p1;
[superlayer addSublayer:sublayer];
sublayer.position = p2;

sublayer只会在p2上显示,而不是从p1p2的动画。有没有办法让它从p1p2制作动画?

1 个答案:

答案 0 :(得分:0)

应首先显示您的sublayer。如果您刚刚创建并添加了sublayer,则可以编写如下内容:

{
    ...
    sublayer.position = p1;
    [superlayer addSublayer:sublayer];
    [self performSelector:@selector(changePosition:)
                    delay:0
               withObject:sublayer];
    ...
}

-(void)changePosition:(CALayer*)layer
{
    layer.position = p2;
}