Я использую RotateAnimation
для поворота изображения, которое я использую как пользовательский циклический счетчик в Android. Здесь мой файл rotate_indefinitely.xml
, который я разместил в res/anim/
:
<?xml version="1.0" encoding="UTF-8"?>
<rotate
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:toDegrees="360"
android:pivotX="50%"
android:pivotY="50%"
android:repeatCount="infinite"
android:duration="1200" />
Когда я применяю это к моему ImageView
, используя AndroidUtils.loadAnimation()
, он отлично работает!
spinner.startAnimation(
AnimationUtils.loadAnimation(activity, R.anim.rotate_indefinitely) );
Одна проблема заключается в том, что вращение изображения кажется паузой в верхней части каждого цикла.
Другими словами, изображение вращается на 360 градусов, кратковременно останавливается, затем снова поворачивается на 360 градусов и т.д.
Я подозреваю, что проблема в том, что анимация использует интерполятор по умолчанию, такой как android:iterpolator="@android:anim/accelerate_interpolator"
(AccelerateInterpolator
), но я не знаю, как сказать ему, чтобы не интерполировать анимацию.
Как отключить интерполяцию (если это действительно проблема), чтобы сделать анимационный цикл плавно?