2010-11-14 1 views
4


Je viens de lire ceci: Android: How can I stop an infinite animation applied on an ImageView?, je l'ai essayé et il fonctionne parfaitement, je mets l'animation dans la méthode onCreate() de mon activité en utilisant AnimationUtils.loadAnimation(AppContext, animationRes), je commence l'animation à l'aide startAnimation() et l'arrêter grâce clearAnimation(). Le problème que j'ai, c'est que si je commence une autre activité et que je reviens à celle avec l'animation, ça ne marche plus. Il semble que l'animation n'est même pas démarrée, l'écouteur attaché à l'animation n'entre pas dans le onAnimationStart(). Est-ce que j'ai râté quelque chose?Android: Comment démarrer une animation infinie appliquée sur un ImageView après la reprise de l'activité avec la vue animée?

Merci!

+2

Veuillez indiquer quand vous appelez 'clearAnimation()' et s'il vous plaît définir ce que vous entendez par "ça ne marche plus". – CommonsWare

+0

J'ai une méthode d'assistance dans une classe d'aide pour gérer l'animation de cette vue, de sorte que 'startAnimation()' est appelé (par exemple) lorsqu'un écran se charge et 'clearAnimation()' lorsque cet écran est chargé. La vue est un champ statique de cette classe d'assistance et la méthode d'assistance est appelée uniquement lorsqu'une activité démarre. Par "ça ne marche plus" je voulais dire que la vue n'est plus animée après avoir changé d'écran. Btw J'ai résolu cela en appelant 'findViewById' pour trouver cette vue chaque fois que j'ai besoin de démarrer/arrêter l'animation, mais pour être honnête, je ne comprends pas vraiment pourquoi cela fonctionne. – futtetennista

Répondre

0

Où appelez-vous clearAnimation().

À mon humble avis, je pense que vous devez appeler startAnimation() à onResume() et appeler 'clearAnimation()' à onPause().

Vérifiez-le et dites-nous.

Questions connexes