Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android基礎知識之frame動畫效果

Android基礎知識之frame動畫效果

編輯:關於Android編程

上一篇我們說了Android中的tween動畫,這一篇我們說說frame動畫,frame動畫主要是實現了一種類似於gif動畫的效果,就是多張圖按預先設定好的時間依次連續顯示。
新建一個android項目,名字叫做frameTest,在res文件夾下新建一個文件夾叫做anim,我們的frame動畫的xml文件就放在這裡。
在anim中新建一個frame.xml文件,內容如下:

<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
 android:oneshot="false"><!-- true表示只播放一次,false表示無限循環播放 -->
 <item android:drawable="@drawable/girl_1" android:duration="100" />
 <item android:drawable="@drawable/girl_2" android:duration="100" />
 <item android:drawable="@drawable/girl_3" android:duration="100" />
 <item android:drawable="@drawable/girl_4" android:duration="100" />
 <item android:drawable="@drawable/girl_5" android:duration="100" />
 <item android:drawable="@drawable/girl_6" android:duration="300" />
 <item android:drawable="@drawable/girl_7" android:duration="400" />
 <item android:drawable="@drawable/girl_8" android:duration="300" />
 <item android:drawable="@drawable/girl_9" android:duration="100" />
 <item android:drawable="@drawable/girl_10" android:duration="100" />
 <item android:drawable="@drawable/girl_11" android:duration="100" />
</animation-list>

這裡是11圖片,前面的android:oneshot屬性表示該動畫執行的次數,false表示該動畫反復循環播放,true則表示該動畫值播放一次,duration表示每張圖片顯示的時間,以毫秒計。

然後看看MainActivity中的代碼:

public class MainActivity extends Activity {

 private ImageView iv;
 private AnimationDrawable ad;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  iv = (ImageView) this.findViewById(R.id.iv);
//  iv.setBackgroundResource(R.anim.frame);
//  ad = (AnimationDrawable) iv.getBackground();
  //上面兩句,可以用下面兩句代替,效果是一樣的
  iv.setImageResource(R.anim.frame);
  ad = (AnimationDrawable) iv.getDrawable();
 }
 public void start(View v){
  //如果ad正在運行,就先讓它停止下來
  if(ad.isRunning())
   ad.stop();
  ad.start();
 }
}

先拿到一個ImageView,然後把frame動畫設置為它的背景,最後拿到這個圖片的背景並強轉為AnimationDrawable,當點擊該圖片時,如果動畫已經在運行,就讓它先停止,再重新運行,否則直接運行即可。

原文鏈接:http://blog.csdn.net/u012702547/article/details/45716757

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持本站。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved