首頁技術(shù)文章正文

Android培訓(xùn)之補(bǔ)間動畫xml法(一)

更新時(shí)間:2017-08-01 來源:黑馬程序員Android培訓(xùn)學(xué)院 瀏覽量:


我們不僅可以在程序中通過代碼來編寫一個(gè)補(bǔ)間動畫,也可以通過xml文件來定義一個(gè)補(bǔ)間動畫,下面通過一個(gè)具體的DEMO來學(xué)習(xí)xml補(bǔ)間動畫的編寫。
新建工程
【File】——>【new】——>【Android Application Project】命名為:11_補(bǔ)間動畫xml
編寫布局
根據(jù)需求編寫布局,效果如圖1-1:
圖1-1所示的頁面與“10_補(bǔ)間動畫”一致,在此就不展示該頁面的xml代碼了。下面我們要實(shí)現(xiàn)的是各個(gè)功能按鈕的動畫效果,
具體代碼如下:
透明度編寫
在資源文件下新建一個(gè)文件夾anim,再在該文件夾下創(chuàng)建一個(gè)alpha.xml文件,在該文件中定義透明度變化的動畫效果,代碼
如例1-1:
例1-1
<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
        android:fromAlpha="0"
        android:toAlpha="1.0"
        android:duration="2000"
        android:repeatCount="2"
        android:repeatMode="reverse">
</alpha>
復(fù)制代碼
動畫定義已經(jīng)完成,我們接下來需要做的是:在activity中實(shí)現(xiàn)動畫資源的加載。代碼如例1-2所示:
例1-2
public void alpha(View view) {
        Animation aa = AnimationUtils.loadAnimation(this, R.anim.alpha);
        iv.setAnimation(aa);
}
復(fù)制代碼
運(yùn)行程序效果如圖1-2所示:
旋轉(zhuǎn)編寫
在文件夾anim下新建一個(gè)rotate.xml文件,在該文件中定義旋轉(zhuǎn)動畫,代碼如例1-3所示:
例1-3
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
        android:fromDegrees="0"
        android:toDegrees="360"
        android:pivotX="50%"
        android:pivotY="50%"
        android:duration="2000"
        android:repeatCount="2"
        android:repeatMode="reverse">
</rotate>
復(fù)制代碼
由例1-3可知:圖片會以自身的中心點(diǎn)為原點(diǎn)進(jìn)行旋轉(zhuǎn),若以父窗體中心點(diǎn)為旋轉(zhuǎn)中心,需要調(diào)整代碼為:
android:pivotX="50%p" android:pivotY="50%p"
在Activity編寫旋轉(zhuǎn)按鈕的點(diǎn)擊事件,代碼如例1-4:
例1-4
public void rotate(View view){
        Animation aa = AnimationUtils.loadAnimation(this, R.anim.rotate);
        iv.setAnimation(aa);
}
復(fù)制代碼
運(yùn)行程序,效果如圖1-3所示:
本文版權(quán)歸黑馬程序員Android培訓(xùn)學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明作者出處。謝謝!
作者:黑馬程序員Android培訓(xùn)學(xué)院
首發(fā):http://android.ithaima.com

分享到:
在線咨詢 我要報(bào)名
和我們在線交談!