1

我对 iOS/Obj-C/Cocoa 开发(第 5 天!)相当陌生,所以我确定我可能在这里遗漏了一些基本的东西,但无论如何……</p>

假设我有一个动画 (a CABasicAnimation) 来更改position.y我的CALayer. 我将其设置duration为 10 秒,然后开始动画。5 秒后,由于用户交互,我想更改position.y动画的目的地。

我尝试了两种方法:

  1. 更改toValue飞行动画的

    这只是导致动画没有变化(尽管很明显它在结束时“跳”到了实际位置)

  2. 取消正在运行的动画(removeAnimationForKey:),并开始一个新的。这里的问题是我无法从正在运行的动画中获取新动画的电流。 position.y

我在 OS X 的 Core Animation 文档中看到(简短/模糊)提到“动画重定向”,但在 iOS 中没有提到。

这可能吗?

4

1 回答 1

0

尝试使用 fromValue = [[layer presentationLayer] position].y 开始下一个动画;

(正如@phix23 在上面的评论中回答的那样)

于 2013-08-22T13:01:13.517 回答