31 补间动画资源文件

在res的anim目录下新建文件

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/linear_interpolator"
    android:duration="2000">
    <!--透明动画 从不透明变为透明-->
    <alpha
        android:fromAlpha="1"
        android:toAlpha="0" />
    <!--缩放动画
     x y 方向从1倍缩放到1.5倍
     以自己中心为缩放点
     android:fillAfter="true" 将最后的结果定于结束时的样子
     android:fillBefore="true"  将最后的结果定于开始时的样子
     android:repeatCount="100" 重复次数为100次 如果为负数的话 则无限执行
     android:repeatMode="reverse" 缩放到1.5倍后再慢慢缩放回去
    -->
    <scale
        android:fromXScale="1"
        android:toXScale="1.5"
        android:fromYScale="1"
        android:toYScale="1.5"
        android:pivotX="50%"
        android:pivotY="50%"
        android:fillAfter="true"
        android:repeatCount="100"
        android:repeatMode="reverse"/>
    <!--移动动画 从当前位置往右移动10像素
    fromXDelta起始点距离当先x坐标的距离
    fromYDelta起始点距离当先Y坐标的距离-->
    <translate
        android:fromXDelta="0"
        android:toXDelta="10"
        android:fromYDelta="0"
        android:toYDelta="0"/>
    <!--旋转动画 以自己中心为旋转点 从0旋转到360度-->
    <rotate
        android:fromDegrees="0"
        android:toDegrees="360"
        android:pivotY="50%"
        android:pivotX="50%"
        />
</set>

动画插补器:

AccelerateInterpolator:动画从开始到结束,变化率是一个加速的过程。
DecelerateInterpolator:动画从开始到结束,变化率是一个减速的过程。
CycleInterpolator:动画从开始到结束,变化率是循环给定次数的正弦曲线。
AccelerateDecelerateInterpolator:动画从开始到结束,变化率是先加速后减速的过程。
LinearInterpolator:动画从开始到结束,变化率是线性变化。

代码中调用:

Animation animation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.set);
btnSend.startAnimation(animation);
原文地址:https://www.cnblogs.com/YyuTtian/p/5440589.html