无法在中间

时间:2016-08-23 12:25:29

标签: ios macos core-animation calayer

我正在通过将speed设置为0并在timeOffset和{{1之间调整0来在macOS上创建交互式动画(但iOS也适用)在用户交互期间。

这很好用,但我希望起始位置在中间位置 - 所以我将1设置为timeOffset。问题是,由于某种原因,现在0.5范围设置为timeOffset0.5。这是1.5中的错误吗?

1 个答案:

答案 0 :(得分:0)

核心动画应该在macOS和iOS之间保持一致,但我只能与iOS通话。

timeOffset不是标准化值。也就是说,它并不总是从0到1.它只是与该动画的beginTime的文字时间偏移,默认为0。根据动画的持续时间,填充模式和重复计数(或重复持续时间),这是预期的。

在您的示例中,假设动画持续时间为1.0秒,我期望的行为是从timeOffset 0.5的中间点开始,一直持续到动画结束时{{1 1.0,快照回到动画的开头,继续向上,直到timeOffset 1.5的动画中间。

所以是的,这是预期的行为,并且它不太可能是一个错误。 (作为旁注,我在使用它的7年中没有遇到Core Animation中的实际错误。它非常可靠。)