招标网站有哪些,高端公司网站设计,网页版微信登陆入口,asp网站安装目录目录效果展示实现原理利用ValueAnimator将数值从0一直增长到你所需要展示的数值#xff0c;然后使用TextView将增长过程中的数值不断展示即可实现金钱的滚动效果。ValueAnimator基础讲解ValueAnimator是Android中用来实现属性动画的类#xff0c;它是Android3.0后才引入的…目录目录效果展示实现原理利用ValueAnimator将数值从0一直增长到你所需要展示的数值然后使用TextView将增长过程中的数值不断展示即可实现金钱的滚动效果。ValueAnimator基础讲解ValueAnimator是Android中用来实现属性动画的类它是Android3.0后才引入的它可以实现将数值从某一个值到某一个值的变化比如ValueAnimator.ofInt(10100)就可以实现数值从10到100的变化而此方法的参数类型是可变长度的参数即可以传入多个数值比如ValueAnimator.ofInt(1010020)则可实现数值从10到100到20的变化那么我们如何获取期间变化的值呢这里我们通过valueAnimator.addUpdateListener()添加一个监听事件来获取而动画的时长可以用setDuration()方法来设置。ValueAnimator mValueAnimator ValueAnimator.ofInt(0,100);mValueAnimator.setDuration(1000);//动画时间为1秒mValueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {Overridepublic void onAnimationUpdate(ValueAnimator animation) {int value (int) animation.getAnimatedValue();//获取期间变化的值}});实现效果(代码展示)public class RunnTextView extends TextView {private ValueAnimator mValueAnimator;private DecimalFormat mDf;public RunnTextView(Context context) {this(context,null);}public RunnTextView(Context context, Nullable AttributeSet attrs) {this(context, attrs,0);}public RunnTextView(Context context, Nullable AttributeSet attrs, int defStyleAttr) {super(context, attrs, defStyleAttr);init();}private void init() {//格式化小数(保留小数点后两位)mDf new DecimalFormat(0.00);initAnim();}/*** 初始化动画*/private void initAnim() {mValueAnimator ValueAnimator.ofFloat(0,0);//由于金钱是小数所以这里使用ofFloat方法mValueAnimator.setDuration(1000);//动画时间为1秒mValueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {Overridepublic void onAnimationUpdate(ValueAnimator animation) {float value (float) animation.getAnimatedValue();if(value0){//当数值大于0的时候才赋值setText(mDf.format(value));}}});}/*** 设置要显示的金钱* param money*/public void setMoney(float money){mValueAnimator.setFloatValues(0,money);//重新设置数值的变化区间mValueAnimator.start();//开启动画}/*** 取消动画和动画监听(优化内存)*/public void cancle(){mValueAnimator.removeAllUpdateListeners();//清除监听事件mValueAnimator.cancel();//取消动画}}