2011-12-31 66 views
1

我开始通过按下一个按钮的动画。这里是该按钮的代码:如何知道/测试时,动画播放完毕

-(IBAction)startAnimation:(id)sender{ 
stick.animationImages = [NSArray arrayWithObjects: 
         [UIImage imageNamed:@"photo 1.JPG"], 
         [UIImage imageNamed:@"photo 2.JPG"], 
         [UIImage imageNamed:@"photo 3.JPG"], 
         [UIImage imageNamed:@"photo 4.JPG"], 
         [UIImage imageNamed:@"photo 5.JPG"],nil]; 
[stick setAnimationRepeatCount:200]; 
stick.animationDuration = 0.5; 
[stick startAnimating]; 
} 

当动画完成后,我想要一个按钮出现,在屏幕上播放另一个动画。我如何测试或看到我的动画完成播放?提前致谢!

回答

2

你还没有告诉我们什么stick是,但它看起来像一个UIImageView。您只能致电isAnimating检查动画是否仍在运行,但您没有收到任何通知,也没有委托。您可以计算停止时间(200 * 0.5),并因此设置一个计时器(添加一点安全余量)。这不会100%正确,但可能“足够好”。

+0

有没有更简单的方法来做到这一点?我只想在动画播放结束后添加一个按钮! THNAK的帮助! – iProRage 2011-12-31 20:04:56

+0

不幸的是,似乎并没有更简单的方法。看一看的[参考](http://developer.apple.com/library/ios/#documentation/uikit/reference/UIImageView_Class/Reference/Reference.html),没有代表,没有通知。 – DarkDust 2011-12-31 21:23:46

+0

没关系,所以我应该抛出一个NSTimer,当它打到一定的时间时,启用一个按钮(或将其“隐藏”属性设置为“否”)?再次感谢您的帮助!! – iProRage 2012-01-03 04:24:10

-1

如果您在使用块叫你的动画,你可以使用一个完成块。

Here is a tutorial you can refer to这显示了几个不同的方式来调用iOS上的动画程序。本教程还展示了如果您不喜欢使用块(如UIView的setAnimationDidStopSelector方法),您可以做些什么来完成。

相关问题