最近朋友做了個動畫效果,之間遇到了些問題,現在總結一下,希望有所幫助。
1.對於單個動畫,就不要用set瞭如:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromXDelta="200" android:toXDelta="0"
android:fromYDelta="0" android:toYDelta="0"
android:duration="100" android:fillAfter="true"/>
2.對於多個動畫的情況下,eclipse並不會智能的告訴你那些屬性不屬於set,畢竟AnimationSet也繼承Animation
經試驗發現,android:duration就必須在具體動畫中設置,而android:fill*="true/false"只能在set中設置纔有效。
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:shareInterpolator="true" android:fillAfter="true"
>
<rotate android:fromDegrees="0"
android:duration="3400"
android:toDegrees="360"
android:pivotX="50%"
android:pivotY="50%"
/>
<translate
android:duration="3400"
android:fromXDelta="0.0" android:toXDelta="200.0"
android:fromYDelta="0.0" android:toYDelta="0.0"
/>
</set>
最後提醒一下,set中動畫的順序會影響動畫的最終效果。