1. 程式人生 > >動畫效果:位置移動、畫面旋轉、漸變透明度、漸變尺寸縮放

動畫效果:位置移動、畫面旋轉、漸變透明度、漸變尺寸縮放

<!--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);