9

RotateAnimation在 XML 中构建了一个,加载它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>

提前致谢!

4

2 回答 2

37

您需要将 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>
于 2011-12-28T17:33:22.317 回答
0

我最终android:toDegrees根据需要将 3600 增加到 360 以上。现在旋转很顺畅。

于 2019-11-29T10:42:57.140 回答