Android仿支付宝中余额宝的数字动画效果

实现效果图:

下面是具体代码,可直接复制:

package com.lcw.rabbit.widget; import android.animation.ObjectAnimator; import android.content.Context; import android.text.TextUtils; import android.util.AttributeSet; import android.view.animation.AccelerateDecelerateInterpolator; import android.widget.TextView; /** * 高仿余额宝数字动画 * Create by: chenwei.li * Date: 2016-07-20 * time: 11:52 * Email: lichenwei.me@foxmail.com */ public class CountNumberView extends TextView { //动画时长 private int duration = 1500; //显示数字 private float number; //显示表达式 private String regex; //显示表示式 public static final String INTREGEX = "%1$01.0f";//不保留小数,整数 public static final String FLOATREGEX = "%1$01.2f";//保留2位小数 public CountNumberView(Context context, AttributeSet attrs) { super(context, attrs); } /** * 显示带有动画效果的数字 * @param number * @param regex */ public void showNumberWithAnimation(float number, String regex) { if (TextUtils.isEmpty(regex)) { //默认为整数 this.regex = INTREGEX; } else { this.regex = regex; } //修改number属性,会调用setNumber方法 ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(this, "number", 0, number); objectAnimator.setDuration(duration); //加速器,从慢到快到再到慢 objectAnimator.setInterpolator(new AccelerateDecelerateInterpolator()); objectAnimator.start(); } /** * 获取当前数字 * @return */ public float getNumber() { return number; } /** * 根据正则表达式,显示对应数字样式 * @param number */ public void setNumber(float number) { this.number = number; setText(String.format(regex, number)); } }

使用方法,在XML里声明后(可以完全当成TextView来使用),直接在Java文件里调用:

mTvCountNum1.showNumberWithAnimation(3201.23f, CountNumberView.FLOATREGEX); mTvCountNum2.showNumberWithAnimation(65535f, CountNumberView.INTREGEX);

这里为了灵活使用,预留了数字显示格式(默认提供整型号和浮点型),大家可以根据自己的需要去更改Regex。

关于String.format的第一个格式参数,这里引用下api的描述:

常规类型、字符类型和数值类型的格式说明符的语法如下:

%[argument_index$][flags][width][.precision]conversion

可选的 argument_index 是一个十进制整数,用于表明参数在参数列表中的位置。第一个参数由 "1$" 引用,第二个参数由 "2$" 引用,依此类推。

可选 flags 是修改输出格式的字符集。有效标志集取决于转换类型。

可选 width 是一个非负十进制整数,表明要向输出中写入的最少字符数。

可选 precision 是一个非负十进制整数,通常用来限制字符数。特定行为取决于转换类型。

总结

Android仿支付宝中余额宝的数字动画效果到这就结束了,希望这篇文章对大家在Android开发中能有所帮助,如果有疑问可以留言交流。

时间: 2024-11-01 12:11:25

Android仿支付宝中余额宝的数字动画效果的相关文章

Android仿支付宝中余额宝的数字动画效果_Android

实现效果图: 下面是具体代码,可直接复制: package com.lcw.rabbit.widget; import android.animation.ObjectAnimator; import android.content.Context; import android.text.TextUtils; import android.util.AttributeSet; import android.view.animation.AccelerateDecelerateInterpola

Android 仿支付宝中的余额宝收益进度条_Android

一. 看效果 二.上代码 package com.framework.widget; import android.app.Activity; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import androi

Android仿支付宝笑脸刷新加载动画的实现代码_Android

看到支付宝的下拉刷新有一个笑脸的动画,因此自己也动手实现一下.效果图如下: 一.总体思路 1.静态部分的笑脸. 这一部分的笑脸就是一个半圆弧,加上两颗眼睛,这部分比较简单,用于一开始的展示. 2.动态笑脸的实现. 2.1.先是从底部有一个圆形在运动,运动在左眼位置时把左眼给绘制,同时圆形继续运动,运动到右眼位置时绘制右眼,圆形继续运动到最右边的位置. 2.2.当上面的圆形运动到最右边时候,开始不断绘制脸,从右向左,脸不断增长,这里脸设置为接近半个圆形的大小. 2.3.当脸画完的时候,开始让脸旋转

Android仿支付宝笑脸刷新加载动画的实现代码

看到支付宝的下拉刷新有一个笑脸的动画,因此自己也动手实现一下.效果图如下: 一.总体思路 1.静态部分的笑脸. 这一部分的笑脸就是一个半圆弧,加上两颗眼睛,这部分比较简单,用于一开始的展示. 2.动态笑脸的实现. 2.1.先是从底部有一个圆形在运动,运动在左眼位置时把左眼给绘制,同时圆形继续运动,运动到右眼位置时绘制右眼,圆形继续运动到最右边的位置. 2.2.当上面的圆形运动到最右边时候,开始不断绘制脸,从右向左,脸不断增长,这里脸设置为接近半个圆形的大小. 2.3.当脸画完的时候,开始让脸旋转

iOS仿支付宝芝麻信用分数仪表盘动画效果_IOS

先看看效果图: 仪表盘动画效果.jpg 1.圆环上绿点的旋转 2.分数值及提示语的变化 3.背景色的变化 直接上主要代码: 1.自定义ZLDashboardView仪表盘文件: .h 文件: /** * 根据跃动数字 * * 确定百分比 * 现在的跳动数字-->背景颜色变化 * */ #import <UIKit/UIKit.h> @interface ZLDashboardView : UIView @property (nonatomic, strong) UIImage *bgIm

Android仿ViVO X6 极速闪充动画效果_Android

一直都在看自定义View,经过一个星期的坚持,基本上能够写出一些比较实用的控件效果了,今天天气太热,就待在家里玩手机,然后手机没电了,在充电的时候,看到了手机的充电动画,觉得挺酷,然后自己我就仔细的分析了一下这里的动画内容,就觉得,这个我也能写出来,所以就有了这篇博客.纯属原创. 先看看效果,因为图片的原因,只能看到静态的. 这个就是效果图了.当然了,这么看好像不怎么样,但是配上了动画,还是挺好看的. 自定义控件的话,其实做的多了,运用的多了,就会觉得自定义View,跟在Photo shop 里

Android仿ViVO X6 极速闪充动画效果

一直都在看自定义View,经过一个星期的坚持,基本上能够写出一些比较实用的控件效果了,今天天气太热,就待在家里玩手机,然后手机没电了,在充电的时候,看到了手机的充电动画,觉得挺酷,然后自己我就仔细的分析了一下这里的动画内容,就觉得,这个我也能写出来,所以就有了这篇博客.纯属原创. 先看看效果,因为图片的原因,只能看到静态的. 这个就是效果图了.当然了,这么看好像不怎么样,但是配上了动画,还是挺好看的. 自定义控件的话,其实做的多了,运用的多了,就会觉得自定义View,跟在Photo shop 里

Android 自定View实现仿QQ运动步数圆弧及动画效果_Android

在之前的Android超精准计步器开发-Dylan计步中的首页用到了一个自定义控件,和QQ运动的界面有点类似,还有动画效果,下面就来讲一下这个View是如何绘制的. 1.先看效果图 2.效果图分析 功能说明:黄色的代表用户设置的总计划锻炼步数,红色的代表用户当前所走的步数. 初步分析:完全自定义View重写onDraw()方法,画圆弧. 3.画一个圆弧必备知识 在Canvas中有一个画圆弧的方法 drawArc(RectF oval, float startAngle, float sweepA

Android仿支付宝微信支付密码界面弹窗封装dialog

一,功能效果 二,实现过程 1,先写xml文件:dialog_keyboard.xml 注意事项 (1),密码部分用的是一个线性布局中6个TextView,并设置android:inputType="numberPassword",外框是用的一个有stroke属性的shape, (2),1-9数字是用的recycleview ,每个item的底部和右边有1dp的黑线,填充后形成分割线. (3),recycleview 要设置属性  android:overScrollMode=&quo