Android中FrameAnimation动画的使用
2015-03-08 16:14
218 查看
Frame Animation 表示帧动画,是顺序播放事先做好的图像,跟电影类似,Android SDK提供了另外一个类AnimationDrawable来定义使用Frame Animation。
下面我们就来看看具体怎么使用帧动画吧。
首先在drawable目录下新建一个frame.xml文件:
上面xml文件中设置了动画变化期间各个图片和持续的时间
下面来看java代码文件怎么实现这个动画:
这样注释上也说清楚了,可以通过xml文件添加图片也可以通过代码来动态添加。
贴个运行图吧:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/21/b982861983af7617bcd5a26bcd2e57fc)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/21/426ba9c946fc7f2ef21d9ddfa55c14bd)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/21/3171cd1c1f1c3e76f685017a416c9e1a)
最后总结一下使用FrameAnimation的具体步骤:
1、在xml文件中定义好需要显示的图片
2、在java文件中得到该控件的背景AnimationDrawable对象
3、调用AnimationDrawable对象的start()方法来开启这个帧动画
![](http://blog.csdn.net/u010687392/article/details/file:/d:/program files/360se6/User Data/temp/1425803477_2383.gif)
下面我们就来看看具体怎么使用帧动画吧。
首先在drawable目录下新建一个frame.xml文件:
<?xml version="1.0" encoding="utf-8"?> <animation-list xmlns:android="http://schemas.android.com/apk/res/android" > <item android:drawable="@drawable/a" android:duration="2000"> </item> <item android:drawable="@drawable/b" android:duration="2000"> </item> <item android:drawable="@drawable/c" android:duration="2000"> </item> </animation-list>
上面xml文件中设置了动画变化期间各个图片和持续的时间
下面来看java代码文件怎么实现这个动画:
public void frameAnimation() throws FileNotFoundException { TextView mTextView = (TextView) findViewById(R.id.tv); mTextView.setBackgroundResource(R.drawable.frame);//把xml中设置好的帧动画资源设置给控件 AnimationDrawable animDrawable = (AnimationDrawable) mTextView .getBackground();//得到该控件的背景Drawable对象 Bitmap bitmap = BitmapFactory .decodeStream(new FileInputStream(Environment .getExternalStorageDirectory() + "/Download/aaa.jpg"));//在代码中动态添加背景图,也可以从服务器获取到的输入流动态添加 animDrawable.addFrame(new BitmapDrawable(null, bitmap), 2000);//设置持续时间 animDrawable.setAlpha(180);//设置图片的透明度 animDrawable.setOneShot(false);//设置是否只运行一次,设置为true为循环运行 animDrawable.start(); }
这样注释上也说清楚了,可以通过xml文件添加图片也可以通过代码来动态添加。
贴个运行图吧:
最后总结一下使用FrameAnimation的具体步骤:
1、在xml文件中定义好需要显示的图片
2、在java文件中得到该控件的背景AnimationDrawable对象
3、调用AnimationDrawable对象的start()方法来开启这个帧动画
![](http://blog.csdn.net/u010687392/article/details/file:/d:/program files/360se6/User Data/temp/1425803477_2383.gif)
![](http://blog.csdn.net/u010687392/article/details/file:/d:/program files/360se6/User Data/temp/1425803477_2383.gif)
相关文章推荐
- Android中FrameAnimation动画的使用
- Android 帧动画(FrameAnimation)的使用
- Android Animation Tween动画效果的使用
- 玩转Android---2D图形及动画---View类使用
- Android Animations动画使用详解
- android中使用2D动画 — SurfaceView 转载
- Android中使用Animation实现控件的动画效果以及Interpolator和AnimationListener的使用
- Android Animation Tween动画效果的使用
- android 动画使用
- Android Animations动画使用详解
- Android Animations动画使用详解
- android游戏开发框架libgdx的使用(二十三)—使用Universal Tween Engine实现动画效果
- Android游戏开发之使用AnimationDrable实现Frame动画(三十一)
- Android中使用Animation实现控件的动画效果以及Interpolator和AnimationListener的使用
- android Frame-By-Frame Animations(一帧一帧地播放动画)的使用
- Android Animations动画使用详解
- Android :动画的使用(1)
- android Tween Animations(动画效果-XML文件实现)的使用
- Android中的动画效果学习之二---Tween动画(使用XML文件进行配置动画效果)
- Android中使用Animation实现控件的动画效果以及Interpolator和AnimationListener的使用