Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/37.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 如何暂停当前正在运行的动画?_Iphone_Cocoa Touch_Uikit_Core Animation - Fatal编程技术网

Iphone 如何暂停当前正在运行的动画?

Iphone 如何暂停当前正在运行的动画?,iphone,cocoa-touch,uikit,core-animation,Iphone,Cocoa Touch,Uikit,Core Animation,我有一个核心动画运行,并想暂停它时,一个按钮被按下。因此,有一种方法——pauseAnimation。当动画暂停时,我希望动画视图保持在动画制作时的当前状态。也就是说,如果视图从左上到右下移动,在中间的某个地方,动画暂停,视图应该停留在中间。 有办法做到这一点吗 据我所知,有一个setAnimationsEnabled=NO选项,但当动画运行时它不起作用,对吗?可以通过禁用动画,然后将模型层的值设置为表示层的值(对于定义动画的所有属性)来实现这一点 例如:layer.transform=laye

我有一个核心动画运行,并想暂停它时,一个按钮被按下。因此,有一种方法——pauseAnimation。当动画暂停时,我希望动画视图保持在动画制作时的当前状态。也就是说,如果视图从左上到右下移动,在中间的某个地方,动画暂停,视图应该停留在中间。 有办法做到这一点吗


据我所知,有一个setAnimationsEnabled=NO选项,但当动画运行时它不起作用,对吗?

可以通过禁用动画,然后将模型层的值设置为表示层的值(对于定义动画的所有属性)来实现这一点

例如:layer.transform=layer.presentationLayer.transform


恢复动画=重新启用动画,并将动画从当前位置设置到所需的最终位置(可能需要调整曲线等以获得可接受的效果)。

可以通过禁用动画,然后将模型层的值设置为表示层的值来完成此操作(用于定义动画的所有特性)

例如:layer.transform=layer.presentationLayer.transform


恢复动画=重新启用动画并从当前位置设置动画到所需的最终位置(可能需要调整曲线等以获得可接受的结果).

您可以通过将动画速度设置为零来暂停层动画,请参见。

您可以通过将动画速度设置为零来暂停层动画,请参见。

如何将模型层值设置为表示层值?myView.transform=myView.layer.transform?如果使用UIView,您需要调用view.layer访问该层,因此view.layer.transform=view.layer.presentationLayer.transform。如何将模型层值设置为表示层值?myView.transform=myView.layer.transform?如果使用UIView,则需要调用view.layer访问该层,因此view.layer.transform=view.layer.presentationLayer.transform。