[英]Android: Add delay between the in and out animation of ViewAnimator
[英]JavaFX : Rotated animation delay between cycles
我使用以下代码为基于RotatedTranstion的ImageView创建了动画:
ImageView icon = ImageCache.getImage("refresh.png");
RotateTransition rotateTransition = new RotateTransition(Duration.millis(2000), icon);
rotateTransition.setByAngle(360.0);
rotateTransition.setCycleCount(Timeline.INDEFINITE);
rotateTransition.play();
这将产生以下动画:
就像您在动画gif中注意到的那样,动画不是连续的,即动画周期之间的延迟很小(暂停)。
我试图看一下API,但无法弄清楚是什么原因造成了这种延迟以及如何摆脱这种延迟。
每个周期之间的明显停顿是由interpolator引起的,默认情况下使用Interpolator.EASE_BOTH
(因此,它在每个周期的末尾减速并在开始时加速)。
要删除它,只需将插值器设置为Interpolator.LINEAR
:
rotateTransition.setInterpolator(Interpolator.LINEAR);
每个Transition
周期的加速和减速时间均由Interpolator
器控制。 Transition使用的默认Interpolator
器是Interpolator.EASE_BOTH
。
您需要线性插值,因此将其添加到代码中:
rotateTransition.setInterpolator(Interpolator.LINEAR);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.