Android——动画之帧动画

一、帧动画(Frame动画):短时间内连续显示一系列图像的过程

二、帧动画的创建

假设 ImageView iv = (ImageView)findViewById(R.id.XXX);

1 需要一系列的图片:存在res/drawable下

2.在xml文件中配置对应的图片

   -把xml文件添加到对应视图

   res/drawable下新建一个animation-list的xml文件 ,名为frame_list 

<animation-list xmlns:.....
android:oneshot="true"只播放一遍
>
 <item 
     android:drawable="@drawable/xxx   //对应动画的每一帧图片
     android:duration = "200"/>
 <item 
     android:drawable="@drawable/xxx
     android:duration = "200"/>
 <item 
     android:drawable="@drawable/xxx
     android:duration = "200"/>
</animation-list>
   iv.setBackgroundResource(R.drawable.frame_list);//将动画xml与某个ImageView绑定

   -获取AnimationDrawable开始动画     

<span style="font-size:18px;">AnimationDrawable anim_draw;
anim_draw=(AnimationDrawable)iv.getBackground();
anim_draw.start();//开始动画 
anim_draw.stop();//停止动画</span>

3.通过代码动态添加

   -构造AnimationDrawable类

   -把动画图片添加到AnimationDrawable中

   -把AnimationDrawable设置为对应视图的背景

anim_draw = new AnimationDrawable();
anim_draw.addFrame(getResource().getDrawable(R.drawable.xxx),100);//添加帧图片
......
anim_draw.addFrame(getResource().getDrawable(R.drawable.xxx),100);//添加帧图片
anim_draw.setOneShot(false);//循环重复播放动画
iv.setBackground(anim_draw);


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章