http://blog.csdn.net/tsiannian/article/details/6649467
Android为编程人员快速的创建一个动画提供了帮助,他就是AnimationDrawable。他封装了线程细节,使用起来非常简单,下面就来看看他的使用方法。
所谓逐帧就是指一幅幅画面连续播放,得益于人眼的视觉停留,我们看到了运动的景象。所以我们要先准备一些图片,他们必须是相联系的,不然你看的的动画以一团糟了。用一个xml描述文件将他们组织起来。xml文件要放到drawable目录下。
- public class AnimationDrawableActivity extends Activity implements View.OnClickListener{
- /** Called when the activity is first created. */
- ImageView imgView;
- Button button;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- button = (Button)findViewById(R.id.button);
- button.setOnClickListener(this);
- imgView = (ImageView)findViewById(R.id.imgView);
- }
- @Override
- public void onClick(View v) {
- imgView.setBackgroundResource(R.drawable.animation1);
- AnimationDrawable ad = (AnimationDrawable)imgView.getBackground();
- if(ad.isRunning()){
- ad.stop();
- ad.start();
- }else{
- ad.start();
- }
- }
- }
- <animation-list
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:oneshot="true"
- >
- <item android:drawable="@drawable/r1" android:duration="100"></item>
- <item android:drawable="@drawable/r2" android:duration="100"></item>
- <item android:drawable="@drawable/r3" android:duration="100"></item>
- <item android:drawable="@drawable/r4" android:duration="100"></item>
- <item android:drawable="@drawable/r5" android:duration="100"></item>
- <item android:drawable="@drawable/r6" android:duration="100"></item>
- <item android:drawable="@drawable/r7" android:duration="100"></item>
- <item android:drawable="@drawable/r8" android:duration="100"></item>
- </animation-list>