完成块中的完成参数在animateWithDuration中的含义是什么

我试图了解视图动画在iOS中的运作方式; 我目前有一个我用以下创建的动画:

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

但我有一个关于完成块中已完成参数的问题; 完成的参数是什么我在某种意义上理解,如果完成是YES,动画实际上发生了这是一件好事, 但是当它设置为NO时通常是什么意思,通常的处理方法是什么 ,尤其是如果你想在同一个视图上链接动画(调用完成块中的下一个动画)?

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

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