小编Ric*_*hal的帖子

正在暂停CAKeyframeAnimation

我在视图的CALayer上使用CAKeyframeAnimation动画UIView的frame属性,并为"position"属性设置动画.我希望能够在用户点击屏幕时停止当前状态的动画,但我无法这样做.

我可以通过调用轻松地停止动画

[view.layer removeAnimationForKey:kFrameAnimationKey];
Run Code Online (Sandbox Code Playgroud)

问题是视图的框架和图层的位置都不会直接由动画更新.如果我在动画开始时和结束时查看位置属性

- (void)animationDidStop:(CAAnimation *)animation finished:(BOOL)finished
Run Code Online (Sandbox Code Playgroud)

它没有改变.

在动画停止时,您似乎需要明确地执行此操作.但是如果动画在某个任意点停止,你就不知道它走了多远.所以问题是如何让动画更新图层的位置属性,或者如何知道动画在停止时已经走了多远.

iphone cocoa core-animation

8
推荐指数
1
解决办法
5292
查看次数

标签 统计

cocoa ×1

core-animation ×1

iphone ×1