2011-09-30 3 views
29

OnTouch d'un ImageView Je commence un fondu dans l'animation:Android animation Listener

myImageView.setOnTouchListener(new View.OnTouchListener() { 
    public boolean onTouch(View v, MotionEvent event) { 
    v.startAnimation(fadeInAnimation); 

Je sais qu'il est besoin d'un écouteur d'animation pour savoir quand l'animation est terminée, mais comment puis-je joindre ce afin que je peut obtenir la vue que l'animation vient de terminer sur ... Je veux définir la visibilité de la vue une fois l'animation terminée.

Merci

+0

c'est votre problème? –

+0

être spécifiquement –

+1

Je veux savoir comment ajouter un écouteur d'animation à une vue d'image – beans

Répondre

80

Je pense que vous en avez besoin.

fadeInAnimation.setAnimationListener(new Animation.AnimationListener() { 
    @Override 
    public void onAnimationStart(Animation animation) { 

    } 

    @Override 
    public void onAnimationEnd(Animation animation) { 

    } 

    @Override 
    public void onAnimationRepeat(Animation animation) { 

    } 
}); 
12

Si vous avez seulement besoin d'une fin action, il suffirait d'utiliser .withEndAction(Runnable)

fadeInAnimation.withEndAction(new Runnable() { 
    @Override 
    public void run() { 
     ... do stuff 
    } 
}) 
+3

Uniquement utilisable au niveau API 16 ou supérieur – Roel

+0

Je cible le niveau API 22 et je ne vois pas que 'withEndAction()' soit disponible avec TranslateAnimation classe –

+0

@Roel pourriez-vous me référer au lien? je veux vérifier le niveau 'api' –