我是iOS / Obj-C / Cocoa开发的新手(第5天!),所以我肯定我可能会遗漏一些基本的东西,但无论如何...
假设我有动画(CABasicAnimation
)来更改position.y
的{{1}}属性。我将CALayer
设置为10秒,然后开始动画。 5秒后,由于用户交互,我想更改动画的目标duration
。
我尝试了两种方法:
更改飞行中动画的position.y
这简单地导致动画没有变化(虽然它在结束时显然“跳”到实际位置)
取消正在运行的动画(toValue
),然后开始一个新动画。这里的问题是我无法从新动画的运行动画中获取当前 removeAnimationForKey:
。
我在OS X的核心动画文档中看到(简短/模糊)mention“动画重定向”,但在iOS中没有这样的提及。
这可能吗?
答案 0 :(得分:0)
尝试使用fromValue = [[layer presentationLayer] position]启动下一个动画.y;
(正如上面@ phix23的评论所述)