Android中的帧动画

来源:互联网 发布:网络超市好开吗 编辑:程序博客网 时间:2024/06/07 04:38

继上一篇补间动画之后,这里主要对帧动画进行简单介绍,以及如何在代码中来使用。

帧动画就是一帧一帧播放的动画,更电影每隔24ms播放一张图片一个道理。对于帧动画同样可以通过代码来创建,也可以通过xml来创建

一、代码创建帧动画


public class MainActivity extends Activity {    private ImageView iv;    private RotateAnimation ra;    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);                iv = (ImageView) findViewById(R.id.ivGirl);        AnimationDrawable ad=new AnimationDrawable();        //获取id        int id=getResources().getIdentifier("a1", "drawable", getPackageName());        int id2=getResources().getIdentifier("a2", "drawable", getPackageName());        int id3=getResources().getIdentifier("girl", "drawable", getPackageName());                //获取Drawable        Drawable drawable = getResources().getDrawable(id);        Drawable drawable2 = getResources().getDrawable(id2);        Drawable drawable3 = getResources().getDrawable(id3);        //添加到ad        ad.addFrame(drawable, 500);        ad.addFrame(drawable2, 500);        ad.addFrame(drawable3, 500);        ad.setOneShot(false);        iv.setBackground(ad);        ad.start();}

、通过在xml文件中把图片先归集在一起,然后通过代码来启动

1、在drawable文件夹下新建一个如下图所示的animation-list文件,把需要的图片都通过这个文件关联起来。

<?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/a1"  android:duration="500"/>    <item android:drawable="@drawable/a2"  android:duration="500"/>    <item android:drawable="@drawable/girl"  android:duration="500"/></animation-list>
2、在Activity的onCreate方法中,只需要简单两行代码就可以启动动画了

<span style="white-space:pre"></span>iv.setBackgroundResource(R.drawable.a);        AnimationDrawable bg = (AnimationDrawable) iv.getBackground();        bg.start();

以上就是创建帧动画的两种方法以及步骤,在后面的文章中还会对属性动画进行介绍。





0 0
原创粉丝点击