Frame类型动画使用步骤

Frame动画是一系列图片按照一定的顺序展示的过程,和放电影的机制很相似,我们称为逐帧动画。Frame动画可以被定义在XML文件中,也可以完全编码实现。

以目前的项目为例子,我需要制作一个可以在接收到网络数据时闪烁一下的LED控件,主要采用xml形式实现,因为个人原因比较喜欢可重用的东西。

在下图的蓝色选项处点击鼠标右键,选择Android XML File

 

弹出资源对话框中选择如下图。作为动画资源,Android官方居然将该资源归类到了Drawable中。这里有点搞,不过你也可以将生成的xml移动到anim中。

输入文件名,点击finish完成资源创建

1 <?xml version="1.0" encoding="utf-8"?>
2 <animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false" >
3     
4     <item android:drawable="@drawable/topbar_blue_off"  android:duration="50"></item>
5     <item android:drawable="@drawable/topbar_blue_on"   android:duration="50"></item>
6     
7 </animation-list>

<animation-list>元素是必须的并且必须要作为根元素,可以包含一或多个<item>元素;

  android:onshot 如果定义为true的话,此动画只会执行一次,如果为false则一直循环

<item>元素代表一帧动画

  android:drawable指定此帧动画所对应的图片资源,

  android:druation代表此帧持续的时间,整数,单位为毫秒

文件命名为 transport_lights.xml

最后一步需要用代码启动动画,这只是其中一种。

1 AnimationDrawable transport_bg = (AnimationDrawable) mTransport.getDrawable();
2 transport_bg.start();

 

posted @ 2013-03-26 16:30  染煞之心  阅读(287)  评论(0编辑  收藏  举报