在Android中使用幀動

幀動畫:是指多張圖片快速切換

先看一下實現的效果



實現方式

第一步:使用Android Studio創建一個Android工程,並且在drawable文件夾中添加創建幀動畫時每一幀用到的圖片


第二步:在drawable文件夾下新建一個frameanimation.xml文件,並在frameannimation.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/g1" android:duration="200" />
    <item android:drawable="@drawable/g2" android:duration="200" />
    <item android:drawable="@drawable/g3" android:duration="200" />
    <item android:drawable="@drawable/g4" android:duration="200" />
    <item android:drawable="@drawable/g5" android:duration="200" />
    <item android:drawable="@drawable/g6" android:duration="200" />
    <item android:drawable="@drawable/g7" android:duration="200" />
    <item android:drawable="@drawable/g8" android:duration="200" />
    <item android:drawable="@drawable/g9" android:duration="200" />
    <item android:drawable="@drawable/g10" android:duration="200" />
    <item android:drawable="@drawable/g11" android:duration="200" />

</animation-list>


第三步:修改activity_main.xml文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.fyt.frameanimation.MainActivity"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/iv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</LinearLayout>

最後一步:修改MainActivity.java文件

package com.fyt.frameanimation;

import android.app.Activity;
import android.graphics.drawable.AnimationDrawable;
import android.os.Bundle;
import android.widget.ImageView;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //獲得佈局文件上的ImageView控件
        ImageView iv = (ImageView) findViewById(R.id.iv);

        //把幀動畫的資源文件指定爲ImageView的背景
        iv.setBackgroundResource(R.drawable.frameanimation);

        //獲取ImageView的背景
        AnimationDrawable ad = (AnimationDrawable) iv.getBackground();

        //播放幀動畫
        ad.start();
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章