package me.bello.mathscalc.util;

import android.view.View;
import android.view.animation.AlphaAnimation;
import android.view.animation.Animation;
import android.view.animation.AnimationSet;
import android.view.animation.RotateAnimation;
import android.view.animation.ScaleAnimation;
import android.view.animation.TranslateAnimation;

/**
 * @Info
 * @Auth Bello
 * @Time 2018/11/11 00:43
 * @Ver
 */
public class AnimUtils {

    /**
     * 淡入
     * @param view
     */
    public static void animAlpha(View view) {
        AnimationSet set = new AnimationSet(true);
        AlphaAnimation anim = new AlphaAnimation(0, 1);
        anim.setDuration(300);
        set.addAnimation(anim);
        view.startAnimation(set);
    }

    /**
     * 缩放
     * @param view
     */
    public static void animScale(View view) {
        AnimationSet set = new AnimationSet(true);
        ScaleAnimation anim = new ScaleAnimation(0.1f, 1, 0.1f, 1, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
        anim.setDuration(500);
        set.addAnimation(anim);
        view.startAnimation(set);
    }

    /**
     * 旋转、缩放、淡入
     * @param view
     */
    public static void animRotate(View view) {
        AnimationSet set = new AnimationSet(true);
        RotateAnimation anim = new RotateAnimation(0, 360,
                Animation.RELATIVE_TO_SELF, 0.5f,
                Animation.RELATIVE_TO_SELF, 0.5f);
        anim.setDuration(500);
        set.addAnimation(anim);
        ScaleAnimation anim2 = new ScaleAnimation(0.1f, 1, 0.1f, 1, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
        anim2.setDuration(500);
        set.addAnimation(anim2);
        AlphaAnimation anim3 = new AlphaAnimation(0, 1);
        anim3.setDuration(800);
        set.addAnimation(anim3);
        view.startAnimation(set);
    }


    /**
     * 移入、淡入
     * @param view
     */
    public static void animTranslate(View view) {
        AnimationSet set = new AnimationSet(true);
        //从右边移动
        TranslateAnimation anim = new TranslateAnimation(Animation.RELATIVE_TO_PARENT, 1, Animation.RELATIVE_TO_PARENT, 0,
                Animation.RELATIVE_TO_PARENT, 0, Animation.RELATIVE_TO_PARENT, 0);
        anim.setDuration(300);
        set.addAnimation(anim);
        //透明度渐变
        AlphaAnimation anim2 = new AlphaAnimation(0, 1);
        anim2.setDuration(600);
        set.addAnimation(anim2);
        //执行
        view.startAnimation(set);
    }


}
