android動(dòng)畫學(xué)習(xí)(3)-Frame動(dòng)畫

一.Frame動(dòng)畫簡(jiǎn)介

Frame動(dòng)畫又稱幀動(dòng)畫,在于Tween明顯的不同就是Tween動(dòng)畫只定義起點(diǎn)與終點(diǎn),但是Frame動(dòng)畫要把動(dòng)畫的每一幀都要定義,所以它需要一個(gè)list來(lái)裝所以item的幀,而且它的類型是AnimationDrawable,是放在drawable文件夾下的。
1.文件目錄:res/drawable/filename.xml
2.編譯資源數(shù)據(jù)類型 AnimationDrawable
以下就是一個(gè)基本的Frame定義

<?xml version="1.0" encoding="utf-8"?> 
<animation-list  xmlns:android="http://schemas.android.com/apk/res/android"
     android:oneshot=["true" | "false"] > 
     <item android:drawable="@[package:]drawable/drawable_resource_name"
          android:duration="integer" /> 
</animation-list>

二.Frame動(dòng)畫屬性

(1)<animation-list>根元素

必須作為根元素,包含一個(gè)或者多個(gè)根元素
屬性:android:oneshot :true:只執(zhí)行一次動(dòng)畫,false:循環(huán)執(zhí)行

(2)<item>一幀獨(dú)立動(dòng)畫

一幀獨(dú)立動(dòng)畫,必須是<animation-list> >的子元素
它的屬性有:

  1. android:drawable Drawable資源,用于這一幀的圖片
  2. android:duration **Integer類型.該幀的時(shí)長(zhǎng),單位為毫秒milliseconds. **

三. Frame動(dòng)畫案例

res/anim/rocket_thrust.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/rocket_thrust1" android:duration="200" /> 
    <item android:drawable="@drawable/rocket_thrust2" android:duration="200" /> 
    <item android:drawable="@drawable/rocket_thrust3" android:duration="200" /> 
</animation-list>

它的使用:

ImageView rocketImage = (ImageView) findViewById(R.id.rocket_image); 
rocketImage.setBackgroundResource(R.drawable.rocket_thrust); 
rocketAnimation = (AnimationDrawable) rocketImage.getBackground(); 
rocketAnimation.start();
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容