es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Animación infinita de rotación en Android, sin pausas.

Puedo rotar mi imagen infinitamente. Pero mi problema es que la imagen se detiene brevemente cuando alcanza los 360° y luego vuelve a rotar. Lo mismo sucede incluso cuando aplico “linear_interpolator”.
Lo que quiero hacer es que la imagen no se detenga en absoluto cuando comienza la siguiente vuelta. Por lo tanto, tiene que rotar infinitamente con la misma velocidad en cualquier grado.

Aquí está mi código . Gracias

<?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="1400" android:pivotx="50%" android:pivoty="50%" android:fromdegrees="0" android:todegrees="360" android:repeatmode="restart" android:repeatcount="infinite"></rotate>
</set>

Cómo lo llamo en mi código

rotate= AnimationUtils.loadAnimation(context, R.anim.loop_rotate)
binding.imgSecondLayout.startAnimation(rotate)

¡Gracias por la ayuda! 🙂

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para resolver el problema de la imagen que se pausa brevemente cuando llega a los 360 grados y luego comienza a girar nuevamente, puedes intentar cambiar el repeatMode a “reverse” en lugar de “restart”. Esto hará que la animación invierta su dirección en cada repetición, eliminando efectivamente la pausa.

    Aquí tienes el código actualizado:

        
        
            
        

    Además, para asegurarte de que la velocidad de rotación sea constante en cualquier grado, puedes intentar establecer una duración más alta. Esto hará que la animación gire a una velocidad más lenta, pero la velocidad se mantendrá constante durante toda la animación.

Comments are closed.