使用方法
成员变量
private Animation waveAnim;
数据初始化的地方初始化动画
//Fragment页面
waveAnim= AnimationUtils.loadAnimation(getContext(), R.anim.wave_slide);
//Activity页面
//waveAnim= AnimationUtils.loadAnimation(this, R.anim.wave_slide);
给一个图像/按钮用动画
waveImg.startAnimation(waveAnim);
给图像/按钮清除动画
waveImg.clearAnimation();
动画文件
平移
R.anim.wave_slide
translate
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:interpolator="@android:anim/linear_interpolator"
android:fromXDelta="0%p"
android:toXDelta="100%p"
android:repeatCount="-1"
android:duration="1000">
</translate>
</set>
interpolator加速器
@android:anim/accelerate_interpolator: 越来越快
@android:anim/decelerate_interpolator:越来越慢
@android:anim/accelerate_decelerate_interpolator:先快后慢
@android:anim/anticipate_interpolator: 先后退一小步然后向前加速
@android:anim/overshoot_interpolator:快速到达终点超出一小步然后回到终点
@android:anim/anticipate_overshoot_interpolator:到达终点超出一小步然后回到终点
@android:anim/bounce_interpolator:到达终点产生弹球效果,弹几下回到终点
@android:anim/linear_interpolator:均匀速度。
旋转
rotate
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:interpolator="@android:anim/linear_interpolator"
android:fromXDelta="0%"
android:toXDelta="100%"
android:repeatCount="-1"
android:duration="1000">
</translate>
</set>