以下代码的问题在于,在两个动画之间存在大约半秒钟的暂停。我希望节点不断旋转。
RotateTransition rt = new RotateTransition(Duration.seconds(2), syncNode);
rt.setFromAngle(0);
rt.setToAngle(360);
rt.setCycleCount(Animation.INDEFINITE);
rt.play();
Run Code Online (Sandbox Code Playgroud)
在Interpolator默认情况下使用,使旋转“加快”开始和“减缓”结尾,这就是为什么你得到你所描述的行为。
改用LINEAR插值器可获得恒定速度的动画:
rt.setInterpolator(Interpolator.LINEAR);
Run Code Online (Sandbox Code Playgroud)