android制作类似支付圆圈和打钩界面ProgressWheel

首先要说明的是,制作圆圈旋转的效果并不是博主做的,是参照了github上的一个代码,只是在上面添加了修改,对其优化并增加了一个打钩的动画。

先来看下效果,1+的手机获取root权限真是难,没法录屏,只能使用这种截屏生成git的笨办法,其实运行起来还是很流畅的。


这是代码github的地址:

git clone https://github.com/LxxCaroline/ProgressWheelView.git

这是圆圈旋转代码的github地址:

git clone https://github.com/pnikosis/materialish-progress.git

我对原作者代码的修改是

1.原作者是在onDraw函数中直接调用invalidate,会导致界面平凡刷新,特别是当你打开这个开发者选项中的设置,再回到应用程序的界面,发现他在频繁刷新。老板给我的建议是每次延迟刷新,使用handler.sendMessageDelay(Message, DelayMills),在handler的handleMessage方法中调用invalidate方法,在onDraw函数中发送消息给handler即可,只要在16ms内刷新不掉帧不卡顿就好了。


2.打钩的动画是我主要的修改,分为两条直线去画。下面是我的设计稿,中间小的方框的边长就是代码中的tickSize,所以每次绘画的时候会先去找圆心,然后以圆心为中心去绘制正方形,分别绘制勾的两条线,先画短的,画完短的再开始画长的。

代码中都有注释,大家自己看吧


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值