Red de conocimiento informático - Conocimiento informático - El desarrollo de Android sobre cómo escuchar animaciones ha finalizado

El desarrollo de Android sobre cómo escuchar animaciones ha finalizado

La plataforma Android proporciona dos tipos de animación: una es la animación Tween, que produce efectos de animación transformando continuamente imágenes (traducción, escala, rotación) de los objetos en la escena, la otra es la animación Frame, que reproduce imágenes prefabricadas en secuencia. similar a una película. Este artículo analizará el efecto de rotación de la animación Tween.

En el cliente Sina Weibo, cuando cada operación está en progreso, aparecerá un ícono giratorio en la esquina superior derecha de la actividad, similar a un efecto de actualización, para recordarle al usuario que la operación está en progreso. . Esta es una forma recomendada de utilizar recordatorios no modales. A continuación se explica cómo lograr este efecto.

1 Defina un ImageView

Defina un ImageView para cargar imágenes y ImageView rotará. la imagen. También se pueden utilizar otras vistas. layout_height="match_parent"gt;

android:id="@ id/infoOperating"

android:layout_width="wrap_content"

android.layout_height=" wrap_content"

android: src="@drawable/operating"

android.scaleType="center"gt;

Donde android: src es el contenido de la imagen , Puedes utilizar las imágenes adjuntas.

Código Java

Código Java

ImageView infoOperatingIV =

(ImageView)findViewById(R.id.infoOperating);

2, defina el efecto de rotación

en la carpeta res/anim bajo el nuevo mensaje. En la carpeta res/anim bajo el archivo xml, el contenido es el siguiente

Código Java

android: fromDegrees="0"

android: toDegrees= "359"

android:duration="500"

android:repeatCount="-1"

android:pivotX="50"

android: pivotY="50" /gt;

Significa que la rotación circular comienza de 0 a 359 grados, y el tiempo necesario para la rotación de 0-359 grados (si está configurado en 360, habrá una pausa al detenerse) es 500 ms, la distancia entre el centro de rotación y el vértice izquierdo de la vista es 50 y la distancia desde el borde superior de la vista es 50, es decir, el centro es positivo. Consulte la introducción del atributo específico a continuación para conocer el significado específico.

El código Java es

Código Java

Animación operatorAnim = AnimationUtils.loadAnimation(this,

R.anim.tip);

LinearInterpolator lin = new LinearInterpolator();

operatingAnim.setInterpolator(lin);

setInterpolator significa establecer la velocidad de rotación.

LinearInterpolator se usa para efectos de velocidad uniforme, Accelerateinterpolator se usa para efectos de aceleración y DecelerateInterpolator se usa para efectos de desaceleración. Consulte los detalles a continuación android: interpolator.

a. El significado de los atributos es el siguiente (marcado en rojo):

android: fromDegrees grados del ángulo inicial

android: toDegrees

grado de ángulo de terminación, el número negativo significa en sentido contrario a las agujas del reloj, el número positivo significa en el sentido de las agujas del reloj. Por ejemplo, 10 pivotes son 3600 mayores que android:fromDegrees

android:pivotX La coordenada X del centro de rotación

Flotación o porcentaje. El punto flotante representa el borde izquierdo del objeto, como 5; el porcentaje representa el borde izquierdo del objeto, como

Otro porcentaje representa el borde izquierdo del contenedor principal; , como 5p; generalmente se establece en 50, lo que significa que está ubicado en el centro del objeto

android: pivotY Y coordenada del centro de rotación

punto flotante o porcentaje. El punto flotante representa en relación con el borde superior del objeto, como 5; el porcentaje representa en relación con el borde superior del objeto, como

El otro porcentaje representa en relación con el borde superior de; el contenedor principal, como 5p, generalmente se establece en 50, lo que indica que está ubicado en el centro del objeto

android:duration

Representa la duración de la rotación desde android:fromDegrees hasta android:toDegrees, en milisegundos. Se puede utilizar para calcular la velocidad.

android: el interpolador representa la tasa de cambio, pero no la velocidad de carrera. Las propiedades del interpolador pueden configurar efectos de animación para acelerar, ralentizar, repetir, rebotar, etc. El valor predeterminado es lento, medio y rápido para el inicio y el final.

android: startOffset es el tiempo que se espera para comenzar a ejecutarse después de llamar a la función de inicio, en milisegundos, si es 10, significa que. comenzará a ejecutarse después de 10 ms

android: repetirCount número de repeticiones, el valor predeterminado es 0, debe ser un int, puede ser -1 para no detenerse

android: repetirModo

Modo de repetición, el valor predeterminado es reiniciar, es decir, comenzar de nuevo y ejecutar nuevamente. Modo de repetición, el valor predeterminado es reiniciar, es decir, volver a ejecutar desde el principio, o lo contrario, es decir, volver a ejecutar desde el final hacia adelante. Efectivo cuando android:repeatCount es mayor que 0 o infinito