android自带的seekbar样式不是很好看,我们在项目开发中,经常需要对其进行美化或者重写。
我在项目需要改成如下这个样式:
其实这个改动还是比较简单的
xml文件如下:
<SeekBar
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="12dp"
android:max="100"
android:maxHeight="6.0dip"
android:minHeight="6.0dip"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:progressDrawable="@drawable/bg_seekbar"
android:thumb="@drawable/seekbar_light_selector" />
android:thumb这个属性不需多说,是指那个小太阳拖动按钮。
android:progressDrawable 在这里的作用是给拖动的进度产生一个颜色渐变的效果,以及进度条四周的圆角效果
bg_seekbar.xml的代码如下:
<pre name="code" class="html"><?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@android:id/background">
<shape>
<solid android:color="#C9CAC5" />
<corners android:radius="10dip"/>
</shape>
</item>
<item android:id="@android:id/secondaryProgress">
<clip>
<shape>
<corners android:radius="10dip"/>
<solid android:color="#C9CAC5" />
</shape>
</clip>
</item>
<item android:id="@android:id/progress">
<bitmap android:src="@drawable/seekbar_bac_line" >
</bitmap>
</item>
</layer-list>
其中@drawable/seekbar_bac_line是指下图: