動畫效果:位置移動、畫面旋轉、漸變透明度、漸變尺寸縮放
阿新 • • 發佈:2018-12-04
<!--alpha漸變透明度動畫效果--> <alpha xmlns:android="http://schemas.android.com/apk/res/android" android:duration="5000" android:fillAfter="false" android:fromAlpha="1.0" android:toAlpha="0.0"/> <!-- fromAlpha:開始時透明度 toAlpha: 結束時透明度 duration:動畫持續時間 fillAfter:設定動畫結束後保持當前的位置-->
<scale xmlns:android="http://schemas.android.com/apk/res/android" android:duration="5000" android:fromXScale="0.0" android:fromYScale="0.0" android:interpolator="@android:anim/decelerate_interpolator" android:pivotX="50%" android:pivotY="50%" android:repeatCount="6" android:repeatMode="reverse"android:startOffset="0" android:toXScale="1.5" android:toYScale="1.5"/> <!--2.)scale漸變尺寸縮放動畫效果 fromXDelta,fromYDelta 起始時X,Y座標,螢幕右下角的座標是X:320,Y:480 toXDelta, toYDelta 動畫結束時X,Y的座標 interpolator 指定動畫插入器 fromXScale,fromYScale, 動畫開始前X,Y的縮放,0.0為不顯示, 1.0為正常大小 toXScale,toYScale, 動畫最終縮放的倍數, 1.0為正常大小,大於1.0放大pivotX, pivotY 動畫起始位置,相對於螢幕的百分比,兩個都為50%表示動畫從自身中間開始 startOffset, 動畫多次執行的間隔時間,如果只執行一次,執行前會暫停這段時間,單位毫秒 duration,一次動畫效果消耗的時間,單位毫秒,值越小動畫速度越快 repeatCount,動畫重複的計數,動畫將會執行該值+1次 repeatMode,動畫重複的模式,reverse為反向,當第偶次執行時,動畫方向會相反。restart為重新執行,方向不變-->
<rotate xmlns:android="http://schemas.android.com/apk/res/android" android:duration="5000" android:fromDegrees="0" android:interpolator="@android:anim/accelerate_decelerate_interpolator" android:pivotY="10%" android:pivotX="50%" android:repeatCount="6" android:toDegrees="-360" /> <!--3.)rotate畫面旋轉動畫效果 fromDegrees 動畫開始時的角度 toDegrees 動畫結束時物件的旋轉角度,正代表順時針 pivotX 屬性為動畫相對於物件的X座標的開始位置 pivotY 屬性為動畫相對於物件的Y座標的開始位置 -->
<translate xmlns:android="http://schemas.android.com/apk/res/android" android:repeatCount="6" android:duration="5000" android:fromXDelta="100%" android:fromYDelta="50" android:interpolator="@android:anim/cycle_interpolator" android:toXDelta="0" android:toYDelta="0"/> <!--4.)translate畫面位置移動動畫效果 fromXDelta,fromYDelta 起始時X,Y座標,螢幕右下角的座標是X:320,Y:480 toXDelta, toYDelta 動畫結束時X,Y的座標-->
<set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:duration="5000" android:fromAlpha="1.0" android:toAlpha="0.0" android:repeatCount="6"/> <scale android:duration="5000" android:fromXScale="0.0" android:fromYScale="0.0" android:interpolator="@android:anim/decelerate_interpolator" android:pivotX="50%" android:pivotY="50%" android:repeatCount="6" android:repeatMode="reverse" android:toXScale="1.5" android:toYScale="1.5"/> </set> <!--5.)set組合動畫效果 -->
// Animation alpha= AnimationUtils.loadAnimation(this,R.anim.move_tranalate); AnimationSet anim=(AnimationSet) AnimationUtils.loadAnimation(this,R.anim.alpha_scale); ivImg.startAnimation(anim);