最近朋友做了个动画效果,之间遇到了些问题,现在总结一下,希望有所帮助。
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中动画的顺序会影响动画的最终效果。