引言
该SeekBar由自定义view来实现,主要完成了普通的进度条(可修改进度条的颜色,游标颜色,二级进度条颜色等等),最后再在普通进度条的基础上实现了歌曲使用的进度条,可弹出窗口显示时间和歌词,该功能主要是在我的乐乐音乐播放器里面使用,其项目地址如下:https://github.com/zhangliangming/HappyPlayer5.git 。
需求
- 完成SeekBar的基本功能
- 扩展弹出窗口显示歌曲时间和歌词
预览图
![](https://upload-images.jianshu.io/upload_images/4111431-d20ebe644d862ae0.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/440)
68747470733a2f2f692e696d6775722e636f6d2f4e6f304c724b422e706e67.png
实现思路
- 重写view的onDraw来绘画进度条和游标
- 重写view的onTouchEvent来监听用户拖动游标或者拖动的事件
- 拖动时,弹出窗口显示时间和歌词
主要代码分析
onDraw
![](https://upload-images.jianshu.io/upload_images/4111431-b5e65568e818a640.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/700)
360截图20180221185835910.png
onTouchEvent
![](https://upload-images.jianshu.io/upload_images/4111431-0cc673695f22fba1.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/700)
360截图20180221185956037.png
![](https://upload-images.jianshu.io/upload_images/4111431-2a79e5bae022a4e8.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/700)
360截图20180221190006293.png
源码
具体的代码和调用Demo,可到源码地址处查看:
https://github.com/zhangliangming/SeekBar.git
最后
如果有问题,可到github上面留言。