仿抖音加载进度条
最近在一个android学习交流群中看到有同学问仿抖音进度条加载怎么实现,刚好自己在学习自定义view,就尝试实现了一下,效果如下图,在此记录一下实现过程,如有不足,欢迎指正交流。项目地址Demo地址

效果分析
首先我们来分析这个进度条的效果,可以看到刚开始进度条是固定长度的深灰色的,然后慢慢向两端延伸并且颜色渐变成透明色,到达屏幕两边时完全透明,如此循环,在这个过程中有两个要点:
- 1 长度向外延伸,由中间向两侧延伸,至屏幕边界
- 2 颜色渐变,深灰色>透明色
首先我们来分析长度向外延伸至屏幕边界,首先我们可以获取到整个view的高度,我们可以在view中心位置上画一个固定初始宽度和高度的灰色的进度条(其实就是一条灰色的线),然后定时向两边增加固定的宽度,然后再次重新绘制这个view,直到进度条的宽度大于view的宽度时,我们再次将进度条的宽度设置为初始宽度。接着执行此步骤
接着我们来分析颜色渐变,项目中我们常用的颜色表示方式有两种,一种是不带透明度,一种是带透明度,如下所示