一个p2p的app的一个效果,进入页面的时候提取资金的时候,有个数量往上加的动画,看到了之后想模仿一下。
建立动画:
int [] data = getInt2ByFloat(50001.24f);
animator = ValueAnimator.ofInt(0,data[0]);
animator2 = ValueAnimator.ofInt(0,data[1]);
getInt2ByFloat方法是将浮点的从小数点拆分成两个整数,以此来显示小数点两边的动画。
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { @Override public void onAnimationUpdate(ValueAnimator valueAnimator) { numberText.setText(""+ (valueAnimator.getAnimatedValue())); } }); animator.setDuration(2000); /** * 监听属性动画的改变值 */ animator2.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { @Override public void onAnimationUpdate(ValueAnimator valueAnimator) { numberText2.setText(""+ (valueAnimator.getAnimatedValue())); } }); animator2.setDuration(2000);
设置一个监听,启动动画即可。public int[] getInt2ByFloat(float number){ if(number == 0f){ return new int[]{0,0}; } String numberStr = number+""; String [] dest = numberStr.split("\\."); if(dest.length == 2){ return new int[]{parseIntByStr(dest[0]),parseIntByStr(dest[1])}; }else if(dest.length==1){ return new int[]{0,parseIntByStr(dest[0])}; }else{ return new int[]{0,0}; } }
done!