【安卓】使用简单的图形动画

使用方法

成员变量

    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>

猜你喜欢

转载自blog.csdn.net/weixin_44179010/article/details/123896883