如何使Android按钮在单击时自动显示动画

我正在尝试制作一个按钮,按下时会播放动画列表。

我在这里显示了一个animation.xml:

       

也适用于onClick函数:

 b_button.setBackgroundResource(R.drawable.animation); AnimationDrawable frameAnimation = (AnimationDrawable) b_button.getBackground(); frameAnimation.setOneShot(true); frameAnimation.start(); 

当我按下按钮时,动画将被播放,但是,只有一次,当我第二次按下它时,它将无法播放。 此外,如何将按钮更改回原始状态? 表示按钮的灰色默认外观。

任何帮助表示赞赏,在此先感谢

  if (frameAnimation.isRunning()) { frameAnimation.stop(); } else { frameAnimation.stop(); frameAnimation.start(); } 

尝试这是有效的(使用OneShot,没有OneShot)? 动画将在最后一帧停止,因此你可以添加一个in xml,其中drawable是灰色的默认外观thx 🙂