Android 帧动画

帧动画

概述

帧动画指多张静态图片一帧接着一帧播放,就像播放电影一样。

常用属性方法

oneshot属性:表示是否只播放一次,true表示只会播放一次,false表示一直循环播放
druation:表示此帧持续的时间,整数,单位为毫秒
drawable:表示此帧动画所对应的图片资源

举个例子

res/drawable下新建anim_loading.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/a1"
          android:duration="80" />
    <item
          android:drawable="@drawable/a2"
          android:duration="80" />
    <item
          android:drawable="@drawable/a3"
          android:duration="80" />
    <item
          android:drawable="@drawable/a4"
          android:duration="80" />
    <item
          android:drawable="@drawable/a5"
          android:duration="80" />
    <item
          android:drawable="@drawable/a6"
          android:duration="80" />
    <item
          android:drawable="@drawable/a7"
          android:duration="80" />
    <item
          android:drawable="@drawable/a8"
          android:duration="80" />
    <item
          android:drawable="@drawable/a9"
          android:duration="80" />
    <item
          android:drawable="@drawable/a10"
          android:duration="80" />
    <item
          android:drawable="@drawable/a11"
          android:duration="80" />
    <item
          android:drawable="@drawable/a12"
          android:duration="80" />
    <item
          android:drawable="@drawable/a13"
          android:duration="80" />
    <item
          android:drawable="@drawable/a14"
          android:duration="80" />
    <item
          android:drawable="@drawable/a15"
          android:duration="80" />
    <item
          android:drawable="@drawable/a16"
          android:duration="80" />
</animation-list>

设置布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:gravity="center_horizontal"
              android:orientation="vertical">

    <Button
            android:id="@+id/btnStart"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="开始动画" />

    <Button
            android:id="@+id/btnStop"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="停止动画" />

    <ImageView
               android:id="@+id/imgAnim"
               android:layout_width="match_parent"
               android:layout_height="wrap_content"
               android:layout_marginTop="10dp"
               android:src="@drawable/anim_loading" />

</LinearLayout>

获取帧动画、开始停止动画

//获取帧动画
anim = (AnimationDrawable) imgAnim.getDrawable();
//开始动画
anim.start();
//停止动画
anim.stop();

代码下载

猜你喜欢

转载自blog.csdn.net/qq_14876133/article/details/113755631