How to clear animation in android?
android, animation, java
Solution
Try cancelling the animations and see, something like
moveright.cancel();
moveright2.cancel();
moveleft.cancel();
Or try reset as well
moveright.reset();
similar for others
Problem
In my android app I am making a button shake using this code ``` public void FlashButton() { final Button button = ((Button)findViewById(R.id.button_message)); final Animation moveright = AnimationUtils.loadAnimation(this, R.anim.moveright); final Animation moveleft = AnimationUtils.loadAnimation(this, R.anim.moveleft); final Animation moveright2 = AnimationUtils.loadAnimation(this, R.anim.moveright2); AnimationListener animation1Listener = new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) {} @Override public void onAnimationRepeat(Animation animation) {} @Override public void onAnimationEnd(Animation animation) { button.startAnimation(moveleft); } }; AnimationListener animation2Listener = new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) {} @Override public void onAnimationRepeat(Animation animation) {} @Override public void onAnimationEnd(Animation animation) { button.startAnimation(moveright2); } }; AnimationListener animation3Listener = new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) {} @Override public void onAnimationRepeat(Animation animation) {} @Override public void onAnimationEnd(Animation animation) { button.startAnimation(moveright); } }; moveright.setAnimationListener(animation1Listener); moveleft.setAnimationListener(animation2Listener); moveright2.setAnimationListener(animation3Listener); button.startAnimation(moveright); } ``` This code sets three animations sequentially in a loop forever. But how do I stop the animation, and make the button normal again? I tried `.clearAnimation();` but it didn't work... Does anyone know? Thanks.