1.在res/drawable目录下一个文件lottery_animlist.xml,内容如下:
2. 设置动画只执行一次
oneshot属性表示是否只播放一次,true表示只会播放一次,false表示一直循环播放
3.怎么用
4.运行、测试:这个时候我们运行一下,发现动画没有运行而是停留在第一帧,那是因为AnimationDrawable播放动画是依附在window上面的,而在Activity onCreate方法中调用时Window还未初始化完毕,所有才会停留在第一帧,要想实现播放必须在onWindowFocusChanged 或者 onResume 中添加如下代码:
imageView.setImageResource(R.drawable.lottery_animlist);
AnimationDrawable animationDrawable=(AnimationDrawable) imageView.getDrawable();
animationDrawable.start();
5.动画 结束时回调
// 动画结束后
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
dismiss();
open();
} }, 12*50);