2011-07-03 14 views
7

Estoy tratando de lograr agregar los gifs animados en mi aplicación.establecer la lista de animación de Android programáticamente

1- Puedo descargar el gif animado del servidor. 2- Soy capaz de decodificar el gif animado (usando mi decodificador personalizado) y tener un mapa de bits separado correspondiente a sus marcos.

Ahora quiero animarlo usando la animación cuadro por cuadro. Mientras leo, para realizar la animación fotograma a fotograma, lo primero que se necesita es "lista de animación".

Quiero saber cómo puedo crear la "lista de animación" requerida que contiene programáticamente cada mapa de bits como un marco separado.

Respuesta

9

Puede usar AnimationDrawable similar a http://androidforums.com/application-development/11620-programmatic-frame-frame-animation-examle-animationdrawable.html pero use sus propios archivos en lugar de los recursos.

Tenga en cuenta que debe tener cuidado con la densidad de la pantalla y los mapas de bits que se descargan en lugar de tomarse de los recursos, de lo contrario podría tener un aspecto diferente en diferentes tamaños de pantalla/resoluciones. Más sobre esto aquí: http://developer.android.com/guide/practices/screens_support.html ver particularmente "Escalar objetos de mapa de bits creados en tiempo de ejecución" capítulo

0

Es importante tener en cuenta que el método start() llamado en el AnimationDrawable no se puede llamar durante el método onCreate() de su Actividad, porque el AnimationDrawable aún no está completamente conectado a la ventana. Si desea reproducir la animación de inmediato, sin necesidad de interacción, entonces puede llamar desde el método onWindowFocusChanged() en su actividad, que se llamará cuando Android enfoque su ventana

Cuestiones relacionadas