我目前有一个像这样的块动画......
[UIView animateWithDuration:0.25 delay:0.0 options:nil animations:^{
self.imageView.image = /* function that returns image */
} completion:^(BOOL finished){
[UIView animateWithDuration:0.25 delay:0.0 options:nil animations:^{
self.imageView.image = /* function that returns image */
} completion:^(BOOL finished){
[UIView animateWithDuration:0.25 delay:0.0 options:nil animations:^{
self.imageView.image = /* function that returns image */
} completion:^(BOOL finished){/*...*/}
我想知道如何在viewWillDisappear
取消此功能。我试过......
[self.view.layer removeAllAnimations];
[self.imageView.layer removeAllAnimations];
finished
变量设置为YES
和NO
。if(done==YES) return
插入completion{}
块。removeAllAnimations
之后),如此gist。 这些方法都不起作用。当我希望它停止时,我的动画仍在计算中,并确保调用停止它的功能。
我的猜测是我正在向错误的对象发送“停止”消息,并且这是一个简单的修复,我没有足够的经验来处理。
答案 0 :(得分:1)
您是否尝试过简单地制作 self.imageView = nil ?