ValueAnimator 使用注意事项
1、动画时间:如果是xml定义的值,需要使用getResources().getInteger(int)获取值
2、动画重复次数:Integer.MAX_VALUE 改为Integer.MAX_VALUE>>2
mIconAnimator = new ValueAnimator();
mIconAnimator.setDuration(getResources().getInteger(android.R.integer.config_mediumAnimTime));
mIconAnimator.addUpdateListener(
new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator animation) {
int rotation = (int) animation.getAnimatedValue();
Log.e("OkHttp", "rotation=" + rotation);
ivButtonIcon.setRotation(rotation);
}
}
);
mIconAnimator.setRepeatCount(1);
mIconAnimator.setInterpolator(new AccelerateDecelerateInterpolator());
mIconAnimator.cancel();
int from = (int) (ivButtonIcon.getRotation() % 360f);
int to = reset ? 0 : 90;
if (from == to) return;
mIconAnimator.setIntValues(from, to);
mIconAnimator.start();