2011-10-05 31 views
3

我想了解如何在iOS中查看动画工作;目前,我有我与创建动画:完成块中的完成参数在animateWithDuration中意味着什么

+ (void)animateWithDuration:(NSTimeInterval)duration 
         delay:(NSTimeInterval)delay 
        options:(UIViewAnimationOptions)options 
       animations:(void (^)(void))animations 
       completion:(void (^)(BOOL finished))completion 

但我有关于在完成块成品参数问题;我完成的参数是否有点理解,如果完成是肯定的动画实际上发生这是一件好事,但它是什么意思,当它被设置为否和什么是通常的方式来处理这个通常 ,特别是如果你想连锁动画(在完成块中调用下一个动画)在同一个视图上工作?

我问的原因是因为它有时候会返回NO,原因不清楚,因为视图存在于视图层次结构中,并且没有其他动画干预。

回答

3

这意味着出于某种原因,动画没有完成。例如,该视图可能已从其超级视图中移除,或者可能已应用了其他动画,或Apple最为人所知的其他一些原因。你如何处理它取决于你。您可以重新开始整个动画链,从最后一个动画开始,或从下一个动画开始。

+0

好吧,当然这取决于我,但是很高兴知道未完成的实际原因是什么,以便我可以采取相应的行动。它大部分时间都在做这项工作,但在某些情况下,如果我排除,我确实得不到任何回报:视图不可见,视图中有其他动画,视图或其任何子视图的大小不正确。 – MrJre

+0

@MrJre就我看不到的动画原因而言,Apple的文档只能提供很少的信息,因此看起来很难以其他任何方式进行反应而不是一般的反应。让我们知道你是否弄清楚你为什么失败了。 – jbat100

相关问题