现在的位置: 首页 > 综合 > 正文

android 逐帧(Frame)动画的实现

2013年10月16日 ⁄ 综合 ⁄ 共 575字 ⁄ 字号 评论关闭

作者:陈文源


        在利用android开发游戏的过程中,可能会碰到类似炸弹爆炸等效果的实现,爆炸效果可以用一个逐帧动画来实现,开发者需要收集从开始爆炸到爆炸结束的所有静态图片,再将这些图片定义成一个逐帧动画,接着在碰撞点播放该逐帧动画即可。

         要实现一个逐帧动画,首先要在XML资源文件中定义。在res文件夹下新建anim文件夹,新建一个xml文件如下:




其中android:oneshot控制该动画是否循环播放,如果该参数置顶为true,则动画将不会循环播放,否则该动画将会循环播放。每个<item/>子元素添加一帧。

 

在main.xml中定义两个按钮,一个开始播放动画,另一个停止播放动画,再定义一个ImageView用来显示动画,把ImageView的背景设置为之前定义好的xml




在anim.xml中定义了一个逐帧动画资源,接下来可以在程序中使用ImageView来显示该动画,AnimationDrawable代表的动画默认是不播放的,必须在程序中启动动画播放才可以,AnimationDrawable提供了两个方法来开始、停止动画,start()开始播放动画,stop()停止播放动画。

 

下面程序中包含两个按钮,一个按钮用户开始播放动画,另一个按钮停止播放动画。




运行结果如下





点击开始按钮则开始播放动画,点击停止按钮停止播放动画。


抱歉!评论已关闭.