根据传入值的变化,产生动画效果
ValueAnimator myAnimator = ValueAnimator.ofObject(new MyEvaluator(), "hello", "world");
myAnimator.addUpdateListener(new AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator animation) {
String animatedValue = (String) animation.getAnimatedValue();
textView.setText(animatedValue);
}
});
myAnimator.setDuration(DURATION);
myAnimator.start();
private class MyEvaluator implements TypeEvaluator<String> {
@Override
public String evaluate(float fraction, String startValue,
String endValue) {
String result = startValue+fraction;
if (fraction == 0) {
result = "start";
} else if (fraction == 1) {
result += endValue;
}
return result;
}