Red de conocimiento informático - Material del sitio web - Cómo utilizar la biblioteca nineoldandroids bajo API11

Cómo utilizar la biblioteca nineoldandroids bajo API11

Muchos estudiantes que están desarrollando Android conocen o han usado una biblioteca de animación, es decir, su autor, su X y varias bibliotecas de código abierto famosas son todas sus obras. Su Jake Wharton. En resumen, NineOldAndroids es una biblioteca de animación compatible con versiones anteriores que permite que los sistemas inferiores a API 11 utilicen la animación de propiedad Ver. Aquí hay una breve descripción del sitio web oficial:

Biblioteca de Android para usar la API de animación Honeycomb (Android 3.0) en todas las versiones de la plataforma anteriores a la 1.0. La funcionalidad de Honeycomb era muy limitada, por lo que se escribió una nueva API en Android 3.x.

Ver animación de propiedades es compatible con Android API 11 y superiores, y el propósito de esta biblioteca es habilitar la animación de propiedades en sistemas inferiores a API 11. Los nombres de clase y el uso de esta biblioteca son los mismos que los de la biblioteca oficial, pero el nombre del paquete es diferente. Al utilizar esta biblioteca, puede animar varias propiedades para que su aplicación sea más vívida y fluida incluso con versiones de API bajas. Dirección oficial:?

Introducción al conocimiento básico

En términos generales, cuando utilizamos la animación de atributos de NineOldAndroids, nuestro código es aproximadamente el siguiente:

ValueAnimator colorAnim = ObjectAnimator . ofFloat(myView, "scaleX" , 0.3f);colorAnim.setDuration(1000);colorAnim.start();

Esta animación cambiará el ancho de myView (un subtipo de Vista) en 1 segundo. Escale al 30% del ancho original. Primero, expliquemos brevemente los principios básicos.

Ya sea que sea compatible oficialmente o sea una versión inferior de nideoldandroids, el principio técnico es el mismo: NineOldAndroids básicamente construye diferentes implementaciones de animaciones de atributos según la versión del sistema del usuario y usa la suya propia en la versión inferior de la implementación de la animación de propiedades API. Si la API del sistema del usuario es mayor o igual a 11, es decir, Android 3.0 y superior, durante la duración de la animación, el método set de la propiedad se llamará continuamente mediante reflexión para modificar su valor. Por ejemplo, para la propiedad scaleX anterior, la biblioteca de animación creará el método set de scaleX internamente. El formato es el siguiente: set + el nombre de la propiedad con la primera letra en mayúsculas + parámetros, como setS caleX (escala de punto flotante). ), de modo que myView pueda modificarse continuamente durante un período de tiempo. El valor de proporción puede lograr el efecto de animación. Echemos un vistazo a la documentación de setScaleX:

Si el sistema del usuario es inferior a API 11, entonces no se llamará al método de propiedad establecida de View para modificar sus propiedades, pero se usará Matrix para modificar la escala de los efectos de animación de la vista, como la traducción y la rotación. Consulte la información relacionada para obtener soporte para Matrix. El principio, la verificación del código y la aplicación de la transformación de imágenes Matrix en Android (1), explicación detallada de la teoría y la aplicación de Android Matrix, Android: procesamiento de transformación de imágenes Matrix.

Después de comprender los principios básicos, echemos un vistazo a su implementación.

Análisis del código fuente