当 CAAnimation 自动反转时,timingFunction 是不是也会反转?
Posted
技术标签:
【中文标题】当 CAAnimation 自动反转时,timingFunction 是不是也会反转?【英文标题】:When a CAAnimation is autoreversed is the timingFunction reversed too?当 CAAnimation 自动反转时,timingFunction 是否也会反转? 【发布时间】:2015-08-11 22:46:40 【问题描述】:一个例子:下面将ease-in从0到1。当它反转时,它会ease-in从1到 0,或者它会 reverse 计时功能,并本质上使用 ease-out?
CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"alpha"];
animation.fromValue = @0;
animation.toValue = @1;
animation.duration = 1.0;
animation.timingFunction = [CAMediaTimingFunction easeIn];
animation.autoreverses = YES;
【问题讨论】:
【参考方案1】:看来倒转动画确实使用了倒转计时功能!
所以在上面的例子中:
0.0
–> 1.0
缓和
1.0
–> 0.0
被缓和。
【讨论】:
有趣的问题和相应的发现;您如何确定它确实使用了反向计时功能?我打赌这与三角函数有关。你让我好奇。 @Unheilig 我通过使用easeIn
时间和autoreverse
使视图长时间在屏幕上移动来凭经验得出结论;从中可以清楚地看出,视图在自动反转之前和之后具有最高速度,这让我相信计时功能只是反向使用:)
:-),史诗般的,正如我所想的那样——你看出来了。 ;-) 有趣的问题+1。感谢您的回复。
@Unheilig 乐于分享!以上是关于当 CAAnimation 自动反转时,timingFunction 是不是也会反转?的主要内容,如果未能解决你的问题,请参考以下文章
应用 CAAnimation 时,AQGridView 单元格被交换
如何在 animationDidStop 委托中识别 CAAnimation?
何时在自定义 UIVIew 中添加 CAAnimation?