Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 完成块中的finished参数在animateWithDuration中的含义是什么_Iphone_Ios_Animation - Fatal编程技术网

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

Iphone 完成块中的finished参数在animateWithDuration中的含义是什么,iphone,ios,animation,Iphone,Ios,Animation,我试图了解iOS中的视图动画是如何工作的;我目前有一个动画,我用它来创建: + (void)animateWithDuration:(NSTimeInterval)duration delay:(NSTimeInterval)delay options:(UIViewAnimationOptions)options animations:(void (^)(void))anima

我试图了解iOS中的视图动画是如何工作的;我目前有一个动画,我用它来创建:

+ (void)animateWithDuration:(NSTimeInterval)duration
                      delay:(NSTimeInterval)delay
                    options:(UIViewAnimationOptions)options
                 animations:(void (^)(void))animations
                 completion:(void (^)(BOOL finished))completion
但是我有一个关于完成块中的finished参数的问题;我多少能理解finished参数是什么,如果finished是YES,动画实际上发生了,这是一件好事,但是当它被设置为NO时意味着什么,以及通常处理这个问题的常用方法是什么,特别是如果你想链接动画的话(调用完成块中的下一个动画)在同一视图上工作


我之所以问这个问题,是因为它有时会返回NO at,原因我不清楚,因为视图存在于视图层次结构中,并且没有其他动画介入。

这意味着由于某种原因动画没有完成。例如,视图可能已从其superview中删除,或者其他动画可能已被删除我已经被应用到它上面,或者苹果公司最了解的一些其他原因。你如何处理它取决于你。你可以重新开始整个动画链,从上一个动画开始,或者下一个动画开始。

当然,这取决于我,但如果知道没有完成的实际原因是什么,我会很高兴,这样我就可以据此采取行动。它确实可以大部分时间我都在做e作业,但在某些情况下,我确实没有得到返回,但我排除了返回的可能性:视图不可见,视图有其他动画,视图或其任何子视图的大小不正确。@MrJre Apple的文档提供的关于动画未完成原因的信息非常少,因此似乎很难重新显示以任何其他方式行动,而不是一般性的。如果你能找出他们在你的案例中失败的原因,请告诉我们。