Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Android] Animation lancé au clique d'un bouton

Sujet résolu
    3 août 2012 à 11:29:17

    Salut à tous,

    Je suis sur un projet d'application qui me demande d'utiliser quelques animations, chose que je n'aime pas utiliser pour plein de raisons (batterie en partie, d'utilisation pas très simple aussi, etc.). Mais je dois quand même me lancer là dedans alors je vous expose mon problème.

    En fait, lorsque je lance l'activité chargé de m'afficher les détails d'une news, j'effectue une animation par une translation vertical d'une petite bar qui reprend 4 boutons : "Like", "Flag", "Comment" et "Share". Ces 4 boutons sont parfaitement cliquables. Aucun problème à ce niveau là. Ce que j'aimerais maintenant c'est effectuer une autre animation lors du clique sur le bouton "Comment" et voir une autre animation du même type que le premier pour afficher un TextField pour permettre à l'utilisateur de poster un commentaire.

    Le problème est là. J'ai beau essayé de lancer mon animation, rien à faire. Il ne veut même pas passer par mon AnimationListener que je lui attache. Je vous joint mon bout de code :

    protected void clickComment() {
    	aC.setAnimationListener(new AnimationCommentListener());
    	mRelativeLayoutComment.startAnimation(aC);
    }
    
    private class AnimationCommentListener implements
    		Animation.AnimationListener {
    	
    	@Override
    	public void onAnimationEnd(Animation animation) {
    		Log.v(TAG, "End animation");
    		mParamsComment.topMargin = mParamsComment.topMargin
    				+ mRelativeLayoutComment.getHeight() + 80;
    		mRelativeLayoutComment.setLayoutParams(mParamsComment);
    		mRelativeLayoutComment.clearAnimation();
    	}
    
    	@Override
    	public void onAnimationRepeat(Animation animation) {
    		Log.v(TAG, "Repeat animation");
    	}
    
    	@Override
    	public void onAnimationStart(Animation animation) {
    		Log.v(TAG, "Start animation");
    	}
    }
    


    Si vous avez des idées, je suis preneur. :)
    • Partager sur Facebook
    • Partager sur Twitter
    Si vous voulez me retrouver, rendez-vous sur ZesteDeSavoir.
      3 août 2012 à 14:23:29

      Bien, j'ai trouvé la solution. Pour ceux que ça intéresse, il suffit d'appeler mRelativeLayoutComment.clearAnimation(); avant mRelativeLayoutComment.startAnimation(aC); et ça règle le problème.
      • Partager sur Facebook
      • Partager sur Twitter
      Si vous voulez me retrouver, rendez-vous sur ZesteDeSavoir.

      [Android] Animation lancé au clique d'un bouton

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown