我正在通过将speed
设置为0
并在timeOffset
和{{1之间调整0
来在macOS上创建交互式动画(但iOS也适用)在用户交互期间。
这很好用,但我希望起始位置在中间位置 - 所以我将1
设置为timeOffset
。问题是,由于某种原因,现在0.5
范围设置为timeOffset
到0.5
。这是1.5
中的错误吗?
答案 0 :(得分:0)
核心动画应该在macOS和iOS之间保持一致,但我只能与iOS通话。
timeOffset
不是标准化值。也就是说,它并不总是从0到1.它只是与该动画的beginTime
的文字时间偏移,默认为0。根据动画的持续时间,填充模式和重复计数(或重复持续时间),这是预期的。
在您的示例中,假设动画持续时间为1.0秒,我期望的行为是从timeOffset
0.5的中间点开始,一直持续到动画结束时{{1 1.0,快照回到动画的开头,继续向上,直到timeOffset
1.5的动画中间。
所以是的,这是预期的行为,并且它不太可能是一个错误。 (作为旁注,我在使用它的7年中没有遇到Core Animation中的实际错误。它非常可靠。)