Android 自定义环形进度条
2019-04-29 本文已影响77人
乘香墨影
每日一言:青春,是一场场考试,是宽大的小幅,是阳光下的操场;青春,更是成长担当,一心追梦,哪怕万人阻挡,也不投降认输。奋斗是青春最亮丽的底色,愿你我保持初生牛犊不怕虎,越是艰险越向前的刚健勇毅。
序言:最近公司有个项目需求,制作环形进度条

一阵头大,不知该如何下手。
这里简单给大家介绍一下制作通用的环形进度条
1、首先我们先要找出有哪些属性需要自定义的,进度条颜色、进度颜色、整个进度条的半径、进度的宽度、进度条内文字颜色及大小、最大进度、当前进度,,确定好之后我们就在attrs中定义出来:

2、然后在自定义View的构造方法中获取一下这些值:

3、接下来我们要重写onMeasure方法,让其可以自适应你的设置:

4.紧接着我们画底层圆


5.接着画外面的进度,外面进度就是一段弧,根据我们获取的进度和总进度来画这段弧,画弧需要用到canvas.drawArc()这个方法,这个方法有两个重载方法:


6.我们绘制白色虚影图形,这里有俩种方式绘制白色虚影图形
(1)通过ui切图后我们把图片放到bitmap中然后描绘bitmap
(2)通过自己绘制白色圆点加上高斯模糊可以达成效果图


7.我们开始绘制进度条字体


https://github.com/17801094126/ProgressBarBandImg
这时大家就有疑惑了,还没达到理想需求啊,关注微信公众号,后续更精彩
