Iphone UIView动画结束
我正在我的应用程序中使用Iphone UIView动画结束,iphone,objective-c,animation,Iphone,Objective C,Animation,我正在我的应用程序中使用UIView动画: [UIView beginAnimations:nil context:NULL]; [UIView setAnimationDuration:1]; //do some animation [UIView commitAnimations]; 现在,动画可能需要几秒钟才能完成。那么,有没有办法知道动画何时结束 我自己还没有使用它,但是有一个方法setAnimationDidStopSe
UIView
动画:
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1];
//do some animation
[UIView commitAnimations];
现在,动画可能需要几秒钟才能完成。那么,有没有办法知道动画何时结束 我自己还没有使用它,但是有一个方法setAnimationDidStopSelector,允许您定义一个选择器,当动画完成时应该调用该选择器 有关详细信息,请参阅Apple的文档
网站上还有一个例子使用apple提供的最新基于块的动画方法:
[UIView animateWithDuration:0.5
delay:0.0
options:UIViewAnimationOptionBeginFromCurrentState
animations:^{
//animation block
}
completion:^(BOOL finished){//this block starts only when
//the animation in the upper block ends
//so you know when exactly the animation ends
}];
您使用的方法不久将被弃用…正如tipycalFlow所说,blocsk也可以工作,但只能在运行4或更高版本的设备上工作。True。另外,请检查这个SOF问题:Nice:),在某个时候将不得不尝试此功能。似乎完成块也设置了动画,有任何方法可以立即执行完成块吗?没有……不要认为完成块需要时间。苹果的文档-
动画序列结束时要执行的块对象。
您可能遗漏了一些东西…如果您仍然发现问题,请将其作为问题发布。