这是一个绝对初学者的问题(对不起),但我想知道如何提交一个动画,一旦它结束就开始另一个动画。想象一下,将图像从 x=0 移动到 x=300。然后你想再次对同一图像进行动画处理,但这一次是从 x=300 到 x=330,以便它从屏幕上消失。
以下代码只会执行从 x=300 到 x=330 的动画,不会提交动画 x=0 到 x=300。我确定我没有得到 commitAnnimation 的概念,这很明显,但是我将如何一个接一个地制作两个动画呢?
我知道我可以将图像直接移动到 330,但我不希望这样,因为我需要第一个动画 (x 0 - 300) 与另一个动画同步。
这是我的(错误的)代码:
[UIView beginAnimations:@"shadowMove" context:nil]; // Begin animation
[UIView setAnimationDuration:0.5];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[imageView setFrame:CGRectOffset([imageView frame], 300, 0)];
[UIView commitAnimations]; // End animations
// Second Animation
[UIView beginAnimations:@"shadowMoveRestAway" context:nil]; // Begin animation
[UIView setAnimationDuration:0.5];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[imageView setFrame:CGRectOffset([imageView frame], 330, 0)]; // Move imageView off screen
[UIView commitAnimations]; // End animations