2012-01-12 11 views
5

Me postulo una animación en mi aplicación Android usando el siguiente código:TransitionDrawable completó

RelativeLayout layout = (RelativeLayout) findViewById(R.id.relativeLayout1); 
layout.setBackgroundResource(R.drawable.translate); 
final TransitionDrawable transition = (TransitionDrawable) layout.getBackground(); 
transition.startTransition(9000); 

La animación tiene una duración de 9 segundos, y luego tiene que ser invertido.

Por el momento estoy usando un temporizador de cuenta atrás (ya uno corriendo en la aplicación), para comprobar si 9 segundos ha pasado y manualmente revertir la transición ....

¿Hay una mejor manera de hacerlo ¿esta?

Gracias

Respuesta

5

para responder a mi propia pregunta, no hay ninguna onCompletionListener. En su lugar, debe contar manualmente los segundos y luego invertir la transisión.

También hice esta pregunta durante un Hangout de desarrollador de Android con Google, y no se pudo responder de ninguna otra manera.

2

Recientemente me he encontrado con este problema y tuve que hacer una transición entre varias imágenes en un bucle. He publicado un answer here con una clase personalizada basada en TransitionDrawable. Sería bastante simple crear devoluciones de llamada en esa clase.

Esperamos que esto ayude a cualquier otra persona que tenga problemas con TransitionDrawables.

+0

Recientemente he cambiado de usar TransistionDrawable a usar ObjectAnimator. Luego utilicé los NineOldAndroids de Jake Wharton (http://nineoldandroids.com/) para que sea compatible con versiones anteriores. – Tony

Cuestiones relacionadas