Android Studio實現幀動畫
本文實例為大傢分享瞭Android Studio實現幀動畫的具體代碼,供大傢參考,具體內容如下
按一定的順序播放靜態的圖片
1、幾張聯系的圖片
2、一個圖片資源管理佈局文件:cartoon_source.xml
3、一個主要的佈局文件:cartoon.xml
4、main.java文件
cartoon_source.xml
<?xml version="1.0" encoding="utf-8"?> //幀動畫資源列表控件 <animation-list xmlns:android="http://schemas.android.com/apk/res/android"> //第一個是圖片資源的地址;第二參數是這個圖片播放的事件:120ms; <item android:drawable="@drawable/boy_0" android:duration="120"/> <item android:drawable="@drawable/boy_1" android:duration="120"/> <item android:drawable="@drawable/boy_2" android:duration="120"/> <item android:drawable="@drawable/boy_3" android:duration="120"/> <item android:drawable="@drawable/boy_4" android:duration="120"/> <item android:drawable="@drawable/boy_5" android:duration="120"/> <item android:drawable="@drawable/boy_6" android:duration="120"/> <item android:drawable="@drawable/boy_7" android:duration="120"/> </animation-list>
cartoon.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout android:id="@+id/boy" android:background="@drawable/cartoon"(背景為資源整合佈局文件) android:layout_height="match_parent" android:layout_width="match_parent" xmlns:android="http://schemas.android.com/apk/res/android"/>
main.java
package com.example.imageview; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; import androidx.core.app.NotificationCompat; import android.annotation.SuppressLint; import android.app.AlertDialog; import android.app.Notification; import android.app.NotificationChannel; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.DialogInterface; import android.content.Intent; import android.graphics.BitmapFactory; import android.graphics.Color; import android.graphics.drawable.AnimationDrawable; import android.graphics.drawable.Drawable; import android.os.Build; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.Button; import android.widget.ListView; import android.widget.PopupWindow; import android.widget.ProgressBar; import android.widget.RelativeLayout; import android.widget.TextView; import java.nio.channels.Channel; import java.util.ArrayList; import java.util.List; public class MainActivity<i> extends AppCompatActivity { /* private static final String TAG = "leo"; private NotificationManager manager; private Notification notification; private PopupWindow popupWindow; //創建一個數組,內部元素為Bean類型; private List<Bean> data = new ArrayList<>(); */ private boolean flag = true; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.cartoon_boy); //獲得佈局 RelativeLayout relativeLayout = findViewById(R.id.boy); //從佈局中獲得背景 AnimationDrawable anim = (AnimationDrawable)relativeLayout.getBackground(); //設置點擊監聽 relativeLayout.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (flag){ anim.start(); flag = false; } else{ anim.stop(); flag = true; } } }); }
以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。
推薦閱讀:
- Android Studio實現補間動畫
- Android用viewPager2實現UI界面翻頁滾動的效果
- Android ListView 實例講解清晰易懂
- android 實現側邊彈窗特效代碼
- Android結合xml實現幀動畫