我在XML中构建了RotateAnimation
,使用AnimationUtils
加载它并将其设置为ImageView
。我面临的问题是,当图像在一轮之后回到其初始位置时,而不是直接进入下一轮,那里有一个小的超时,就像滞后一样。
是否有任何解决方案可以删除此超时?
您可以在下面找到动画的xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<rotate
android:interpolator="@android:anim/linear_interpolator"
android:duration="1800"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:repeatCount="infinite"
android:toDegrees="360"/>
</set>
提前致谢!
答案 0 :(得分:30)
您需要将linear_interpolator放在集合上。
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator">
<rotate
android:duration="1800"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:repeatCount="infinite"
android:toDegrees="360"/>
</set>
答案 1 :(得分:0)
我最终根据需要将android:toDegrees
增加到360以上,例如3600。旋转现在很顺畅。