前言
Android中自带的SeekBar个人感觉用起来很麻烦,调整一些颜色之类的需要单独写一个XML文件,内容感觉也很啰嗦。刚好我们的白板Demo开发中需要用到SeekBar,所以干脆实现了一个满足基本功能的SeekBar,支持在xml布局中指定各种颜色属性,也支持代码动态设置颜色。用起来更顺心一些。
SeekBar的代码请查看Github地址:白板Demo,Demo地址请:点击这里
即拿即用,非常方便;p(记得将res/values/styles.xml
中的属性一并复制走)
效果
实现
由于不涉及到动画,这种自定义View做起来还是相当简单的。首先在res/values/styles.xml
文件中定义好自己需要的属性,我这里贴上我定义的属性:
<declare-styleable name="SeekBarWidget">
<attr name="seek_maxProgress" format="integer" /><!-- 最大progress -->
<attr name="seek_minProgress" format="integer" /><!-- 最小progress -->
<attr name="seek_progress" format="integer" /><!-- 当前progress(默认值) -->
<attr name="seek_circleRadius" format="dimension" /><!-- seekBar中间圆形的半径 -->
<attr name="seek_circleStrokeWidth" format="dimension" /><!-- seekBar中间圆形外的border -->
<attr name="seek_lineHeight" format="dimension" /><!-- lineHeight有点词不达意,其实是进度条的高度 -->
<attr name="seek_backgroundColor" format="color" /><!-- 进度条的背景色 -->
<attr name="seek_circleStrokeColor" format