?
Frame Animation实现方法:
?
定义在一XML文件,比如res/anim/anim_example.xml:
?
??????? <?xml version="1.0" encoding="utf-8"?>
??????? <animation-list xmlns:android="http://schemas.android.com/apk/res/android"
??????????? android:oneshot="false">
??????????? <item android:drawable="@drawable/pic01" android:duration="200" />
??????????? <item android:drawable="@drawable/pic02" android:duration="200" />
??????????? <item android:drawable="@drawable/pic03" android:duration="200" />
??????? </animation-list>
?
代码:
?
??????? ImageView someView = (ImageView) findViewById(R.id.some_view);
??????? someView.setBackgroundResource(R.drawable.anim_example);
?
??????? AnimationDrawable? someAnimation = (AnimationDrawable) someView.getBackground();
??????? //开始播放动画
??????? someAnimation .start();
??????? //停止播放动画
??????? someAnimation .stop();
?AnimationDrawable | |
获取、设置动画的属性 | |
int getDuration() | 获取动画的时长 |
int getNumberOfFrames() | 获取动画的帧数 |
boolean isOneShot() Void setOneShot(boolean oneshot) | 获取oneshot属性 设置oneshot属性 |
void inflate(Resurce r,XmlPullParser p, AttributeSet attrs) | |
增加、获取帧动画 | |
Drawable getFrame(int index) | 获取某帧的Drawable资源 |
void addFrame(Drawable frame,int duration) | 为当前动画增加帧(资源,持续时长) |
动画控制 | |
void start() | 开始动画 |
void run() | 外界不能直接掉调用,使用start()替代 |
boolean? isRunning() | 当前动画是否在运行 |
void stop() | 停止当前动画 |
AnimationDrawable | |
获取、设置动画的属性 | |
int getDuration() | 获取动画的时长 |
int getNumberOfFrames() | 获取动画的帧数 |
boolean isOneShot() Void setOneShot(boolean oneshot) | 获取oneshot属性 设置oneshot属性 |
void inflate(Resurce r,XmlPullParser p, AttributeSet attrs) | |
增加、获取帧动画 | |
Drawable getFrame(int index) | 获取某帧的Drawable资源 |
void addFrame(Drawable frame,int duration) | 为当前动画增加帧(资源,持续时长) |
动画控制 | |
void start() | 开始动画 |
void run() | 外界不能直接掉调用,使用start()替代 |
boolean? isRunning() | 当前动画是否在运行 |
void stop() | 停止当前动画 |
<script type="text/javascript"></script>