簡單理解動畫就是:新建一個ValueAnimator,這個animator在設定的時間內持續調用自己的一個方法,不錯地更新某個值,如讓一個值從0-1,我們就可以利用從0-1這樣的變化值,讓需要動畫的View利用這個變化值,平移,旋轉,縮放等,從而形成動畫
ValueAnimator valueAnimator = ValueAnimator.ofFloat(0, 1);
valueAnimator.setDuration(duration);
valueAnimator.setInterpolator(new AccelerateInterpolator());
valueAnimator.addUpdateListener(new AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator animator) {
// 不斷重新計算上下左右位置
float fraction = (Float) animator.getAnimatedValue(); //獲取這個正在變化的值
postInvalidate();
}
});
valueAnimator.start();