我正在制作一个动画,当我按I按钮时可以播放。该动画由我制作的3帧组成。
截至目前,当我按下按钮时,动画开始但没有停止,它只是不断地循环播放。
我想要的是以下内容:
按下按钮时,动画播放一次。直到再次按下按钮,它才会播放。但是,如果在播放动画时按此按钮(又要在完成动画之前中断动画),则动画将重新开始。
这是我按下按钮时播放动画的代码:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button start = (Button) findViewById(R.id.button);
start.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ImageView bun = (ImageView)findViewById(R.id.imageView);
bun.setImageResource(R.drawable.buns);
AnimationDrawable buns = (AnimationDrawable)bun.getDrawable();
buns.start();
}
});
}
}
我知道您可以写:
buns.setOneShot(true)
这将导致动画播放一次然后停止,但这不是我想要的解决方案。
谢谢!
答案 0 :(得分:0)
更新:
我想出了解决方案,以防其他人遇到问题。
似乎我要添加以下行:
buns.setOneShot(true);
之后
buns.start()
这将具有预期的效果,因为动画将在您单击后停止,并且直到再次单击后才开始。
干杯!