先来看下最终的效果,基本和vivo的一致了。
从上图可以看出,有3个地方需要自定义:
那么就开始吧,步骤不是很多
已有进度和未有进度的定义是在同一个xml文件里定义的。我们在res-drawable文件夹下,新建一个xml文件,类型是layer-list。
圆形滑块,同样在res-drawable文件夹下,新建一个xml文件,类型是shape,形状为oval椭圆,后面会定义size,设置为圆形。
注意:
maxHeight和minHeight必须要设置,否则滑块的高度会不能超过SeekBar的高度,少配置一个都不行!
5.0以下,使用上面的定义是没有问题的,但是在5.0却出现滑块和背景之间有截断的现象,处理这个问题,我们需要加以下属性来处理。
默认2边会有一定距离的padding,我们都配置为0dp即可。
默认拽托滑块时,会有一圆阴影浮现在滑块上,如果需要去掉这个效果,需要加一个属性。
android:maxHeight 背景高度android:progressDrawable 进度条背景
android:thumb 进度thumb(拖块)
android:splitTrack thumb是否切割seekbar背景,默认true,会看到thumb周围区域被切割,效果如下(为了效果明显,背景高度特意改高了)
seekbar_bg.xml
seekbar_thumb.xml
可以不指定android:thumb 指定 android:thumbTint来改变thumb颜色,按下/点击有系统默认动效。
前后间距问题:
reference:
http://www.zoftino.com/android-seekbar-and-custom-seekbar-examples
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)