ValueAnimator无法正常工作。从0而不是从1个值
问题描述:
重启这是我的代码:ValueAnimator无法正常工作。从0而不是从1个值
public static void countTextViewTravelMode(final Integer value, final TextView myView, final CrudStateCallback back){
Integer begin = 0;
try {
begin = Integer.parseInt(myView.getText().toString());
}catch (Exception e){
Log.e("","error trying to get value travel:" + e.getMessage());
}
ValueAnimator animator = ValueAnimator.ofInt(begin, value);
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
public void onAnimationUpdate(ValueAnimator animation) {
String string = animation.getAnimatedValue() + "";
myView.setText(string);
}
});
animator.setEvaluator(new TypeEvaluator<Integer>() {
public Integer evaluate(float fraction, Integer startValue, Integer endValue) {
return Math.round((endValue - startValue) * fraction);
}
});
animator.setDuration(1000);
animator.start();
if(back!= null)
back.onResponse("");
}
当活动被称为这个被调用一次,以获得新的数据完成API调用后一次。 第一次从0到正确的值。 第二次,它回到0,从0开始,并始终停在一个随机数,这是一个小于所需的数字。 我怎样才能让它不从0重新启动,并且在想要的nr完成?
答
这是错误的:
animator.setEvaluator(new TypeEvaluator<Integer>() {
public Integer evaluate(float fraction, Integer startValue, Integer endValue) {
return Math.round((endValue - startValue) * fraction);
}
});
拿出来,它就像一个魅力