Android下修改SeekBar样式的解决办法
程序员文章站
2023-12-01 20:17:16
seekbar配置文件:xml代码复制代码 代码如下:
seekbar配置文件:
xml代码
<seekbar
android:id="@+id/player_seekbar"
android:layout_width="245px"
android:layout_height="25px"
android:progressdrawable="@drawable/seekbar_style"
android:thumb="@drawable/thumb"
android:paddingleft="16px"
android:paddingright="15px"
android:paddingtop="5px"
android:paddingbottom="5px"
android:progress="0"
android:max="0"
android:secondaryprogress="0"
/>
android:progressdrawable="@drawable/seekbar_style"背景条
seekbar_style配置如下:
xml代码
<?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>
<corners android:radius="5dip" />
<gradient
android:startcolor="#ff9d9e9d"
android:centercolor="#ff5a5d5a"
android:centery="0.75"
android:endcolor="#ff747674"
android:angle="270"
/>
</shape>
</item>
<item android:id="@android:id/secondaryprogress">
<clip>
<shape>
<corners android:radius="5dip" />
<gradient
android:startcolor="#80ffd300"
android:centercolor="#80ffb600"
android:centery="0.75"
android:endcolor="#a0ffcb00"
android:angle="270"
/>
</shape>
</clip>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="5dip" />
<gradient
android:startcolor="#ff0099cc"
android:centercolor="#ff3399cc"
android:centery="0.75"
android:endcolor="#ff6699cc"
android:angle="270"
/>
</shape>
</clip>
</item>
</layer-list>
或者:用图片如下:
xml代码
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background"
android:drawable="@drawable/progress_bg" />
<item android:id="@android:id/secondaryprogress"
android:drawable="@drawable/second_progress">
</item>
<item android:id="@android:id/progress"
android:drawable="@drawable/first_progress">
</item>
</layer-list>
方形
xml代码
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background"
android:drawable="@drawable/progress_bg" />
<item android:id="@android:id/secondaryprogress">
<clip android:drawable="@drawable/second_progress" />
</item>
<item android:id="@android:id/progress">
<clip android:drawable="@drawable/first_progress" />
</item>
</layer-list>
android:thumb="@drawable/thumb"就是那个会动的球
配置如下:
xml代码
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 按下状态-->
<item
android:state_focused="true"
android:state_pressed="true"
android:drawable="@drawable/thumb_pressed" />
<!-- 普通无焦点状态 -->
<item
android:state_focused="false"
android:state_pressed="false"
android:drawable="@drawable/thumb_normal" />
<!-- 有焦点状态-->
<item
android:state_focused="true"
android:state_pressed="false"
android:drawable="@drawable/thumb_focused" />
<!-- 有焦点 -->
<item
android:state_focused="true"
android:drawable="@drawable/thumb_focused" />
</selector>
xml代码
复制代码 代码如下:
<seekbar
android:id="@+id/player_seekbar"
android:layout_width="245px"
android:layout_height="25px"
android:progressdrawable="@drawable/seekbar_style"
android:thumb="@drawable/thumb"
android:paddingleft="16px"
android:paddingright="15px"
android:paddingtop="5px"
android:paddingbottom="5px"
android:progress="0"
android:max="0"
android:secondaryprogress="0"
/>
android:progressdrawable="@drawable/seekbar_style"背景条
seekbar_style配置如下:
xml代码
复制代码 代码如下:
<?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>
<corners android:radius="5dip" />
<gradient
android:startcolor="#ff9d9e9d"
android:centercolor="#ff5a5d5a"
android:centery="0.75"
android:endcolor="#ff747674"
android:angle="270"
/>
</shape>
</item>
<item android:id="@android:id/secondaryprogress">
<clip>
<shape>
<corners android:radius="5dip" />
<gradient
android:startcolor="#80ffd300"
android:centercolor="#80ffb600"
android:centery="0.75"
android:endcolor="#a0ffcb00"
android:angle="270"
/>
</shape>
</clip>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="5dip" />
<gradient
android:startcolor="#ff0099cc"
android:centercolor="#ff3399cc"
android:centery="0.75"
android:endcolor="#ff6699cc"
android:angle="270"
/>
</shape>
</clip>
</item>
</layer-list>
或者:用图片如下:
xml代码
复制代码 代码如下:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background"
android:drawable="@drawable/progress_bg" />
<item android:id="@android:id/secondaryprogress"
android:drawable="@drawable/second_progress">
</item>
<item android:id="@android:id/progress"
android:drawable="@drawable/first_progress">
</item>
</layer-list>
方形
xml代码
复制代码 代码如下:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background"
android:drawable="@drawable/progress_bg" />
<item android:id="@android:id/secondaryprogress">
<clip android:drawable="@drawable/second_progress" />
</item>
<item android:id="@android:id/progress">
<clip android:drawable="@drawable/first_progress" />
</item>
</layer-list>
android:thumb="@drawable/thumb"就是那个会动的球
配置如下:
xml代码
复制代码 代码如下:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 按下状态-->
<item
android:state_focused="true"
android:state_pressed="true"
android:drawable="@drawable/thumb_pressed" />
<!-- 普通无焦点状态 -->
<item
android:state_focused="false"
android:state_pressed="false"
android:drawable="@drawable/thumb_normal" />
<!-- 有焦点状态-->
<item
android:state_focused="true"
android:state_pressed="false"
android:drawable="@drawable/thumb_focused" />
<!-- 有焦点 -->
<item
android:state_focused="true"
android:drawable="@drawable/thumb_focused" />
</selector>