Как убрать задержку при повторении Rotate Animation на Android?

Я построил 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>

Заранее спасибо!


person Dimitris Makris    schedule 27.12.2011    source источник
comment
См .: stackoverflow.com/q/1634252/1402846   -  person Pang    schedule 03.06.2013


Ответы (2)


Вам нужно поставить 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>
person slund    schedule 28.12.2011
comment
Потрясающий! Большое Вам спасибо!! - person Dimitris Makris; 28.12.2011

Я закончил тем, что увеличил android:toDegrees до 360, например, до 3600, в соответствии с потребностями. Вращение теперь плавное.

person Hariharasudhan Gunasekaran    schedule 29.11.2019