}
public RiseNumberTextView(Context context,AttributeSet attr){
super(context,attr);
}
public RiseNumberTextView(Context context,AttributeSet attr,int defStyle)
{
super(context,attr,defStyle);
}
public interface EndListener {
public void onEndFinish();
}
/判断滚动状态/
public boolean isRunning() {
return (mPlayingState == RUNNING);
}
/实现浮点型数字滚动/
private void runFloat(){
ValueAnimator valueAnimator = ValueAnimator.ofFloat(fromNumber, number);
valueAnimator.setDuration(duration);
valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator valueAnimator) {
setText(fnum.format(Float.parseFloat(valueAnimator.getAnimatedValue().toString())));
if (valueAnimator.getAnimatedFraction()>=1){
mPlayingState = STOPPED;
if (mEndListener!=null)
mEndListener.onEndFinish();
}
}
});
valueAnimator.start();
}
/实现整数型数字滚动/
private void runInt(){
ValueAnimator valueAnimator