2010-07-29 3 views
4

J'ai une question rapide. J'essaye d'animer une vue d'enfant pour la faire disparaître.Comment animer une vue enfant et avoir la vue parent à redimensionner automatiquement?

Cette partie est facile, mais, pendant l'animation, la vue parente n'est pas redimensionnée. Comment puis-je faire pour redimensionner automatiquement l'image parent pendant l'animation?

Voici mon code actuel:

AnimationSet set = new AnimationSet(true); 

    Animation fade = new ScaleAnimation(1.f, 1.f, 1.f, 0);   
    Animation fade2 = new AlphaAnimation(1, 0); 

    set.addAnimation(fade); 
    set.addAnimation(fade2); 
    set.setDuration(2000); 
    set.setFillAfter(true);   

    bgColor.startAnimation(set); 

bgColor est la vue que je fais disparaître. Voici le résultat final: Result

Vous pouvez voir l'écart après l'animation.

Des idées?

Merci d'avance!

+1

Salut .. Avez-vous eu de la chance avec ça? J'essaie de faire la même chose ... –

Répondre

0

Vous pouvez ajouter un AnimationListener et faire un changement de la mise en page après l'animation se fait

animation.setAnimationListener(new AnimationListener() { 
    @Override 
    public void onAnimationEnd(Animation animation) { 
     bgColor.setVisibility(View.GONE); 
    } 
    @Override 
    public void onAnimationRepeat(Animation animation) { 
    } 
    @Override 
    public void onAnimationStart(Animation animation) { 
    } 
}); 

Aussi, assurez-vous d'avoir vos trucs ensemble en ce qui concerne onFillAfter()!

Questions connexes