简介DancingNumberView是一个用于在文本中跳转显示数字的控件,继承自TextView。该控件一般用于显示用户比较敏感的数字,比如钱,让UI交互更加生动。具有以下特点:自动获取文本中的所有数字,同时开始跳转,省去了拼接多个TextView的麻烦支持数字以自定义格式显示,比如限制只显示两位数小数点后。ImportusingGradle第一步,在项目的build.gradle文件的合适位置添加allprojects{repositories{...maven{url"https://jitpack.io"}}}。Step2,在app的build.gradle文件位置适当的地方添加dependenciesdependencies{compile'c??om.github.JianxunRao:DancingNumberView:V1.0.1'}usageviaXMLlayoutDancingNumberViewdnv=(DancingNumberView)findViewById(R.id.dnv);dnv.setText(文本);//设置显示内容dnv.setDuration(duration);//设置跳动的时长(ms)dnv.setFormat(format);//设置数字的显示格式dnv.dance();//开始效果,开始数字跳转键码/***文字中的数字开始跳转*/publicvoiddance(){text=getText().toString();numbers=newArrayList<>();Patternpattern=Pattern.compile("\\d+(\\.\\d+)?");Matchermatcher=pattern.matcher(text);while(matcher.find()){numbers.add(Float.parseFloat(matcher.group()));}textPattern=text.replaceAll("\\d+(\\.\\d+)?",PLACEHOLDER);numberTemp=newfloat[numbers.size()];ObjectAnimatorobjectAnimator=ObjectAnimator.ofFloat(this,"factor",0,1);objectAnimator.setDuration(duration);objectAnimator.setInterpolator(newAccelerateDecelerateInterpolator());objectAnimator.start();}/***获取算子*@return算子*/publicfloatgetFactor(){returnfactor;}/***设置计算因数,为ObjectAnimator调整*@seeObjectAnimator*@paramfactor计算因数*/publicvoidsetFactor(floatfactor){StringtextNow=textPattern;this.factor=factor;for(inti=0;i