Fcoder Fcoder - 4 years ago 110
Java Question

Invisibility and GONE doesnt work after animation in android

i use this code to when i click on a imagebox, run an animation on another object and dissaper itself via visibility.GONE. but it doesnt work!! here is my code:

againbtn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {

//answer button on animation
Animation anim2 = AnimationUtils.loadAnimation(MainActivity.this, R.anim.askbtnonanim);
anim2.setFillAfter(true);
askbtn.startAnimation(anim2);

//gone myselft (againbtn)
againbtn.setVisibility(View.GONE);
}
});


if a delete 3 animation line from this code, everything is OK and works, but now it doesn't. but why? it's related to anim2.setFillAfter(true); ??? i put this because my animation run one time and dont reset! please help me

Answer Source

You should implement Animation Listener and in onAnimationEnd() you should perform your task... hope below code will help you...

anim2.setAnimationListener(new Animation.AnimationListener(){
    @Override
    public void onAnimationStart(Animation arg0) {
    }           

    @Override
    public void onAnimationRepeat(Animation arg0) {
    }           

    @Override
    public void onAnimationEnd(Animation arg0) {
        againbtn.setVisibility(View.GONE);  //set your button visibility here
    }


});
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download