三种自定义漂亮的Android SeekBar的方法
按顺序:
第一种:Seekbar 背景是颜色,thumb是图片;
<SeekBar
android:id="@+id/timeline"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:focusable="true"
android:maxHeight="4.0dip"
android:minHeight="4.0dip"
android:paddingLeft="16.0dip"
android:paddingRight="16.0dip"
android:progressDrawable="@drawable/po_seekbar"
android:thumb="@drawable/seekbar_thumb" />
drawable/po_seekbar.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>
<solid android:color="#ff51495e" />
</shape>
</item>
<item android:id="@android:id/secondaryProgress">
<clip>
<shape>
<solid android:color="#ff51495e" />
</shape>
</clip>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<solid android:color="#ff996dfe" />
</shape>
</clip>
</item>
</layer-list>
drawable/seekbar_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="false" android:drawable="@drawable/seekbar_thumb_normal" />
<item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/seekbar_thumb_pressed" />
<item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/seekbar_thumb_pressed" />
<item android:drawable="@drawable/seekbar_thumb_normal" />
</selector>
第二种SeekBar是图片实现的
<SeekBar
android:id="@+id/sb_detail_play_progress"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:paddingLeft="15.0dip"
android:paddingRight="15.0dip"
android:progressDrawable="@drawable/progress_holo_light"
android:thumb="@drawable/detail_icon_schedule_ball" />
drawable/progress_holo_light.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/volumn_bg" />
<item android:id="@*android:id/secondaryProgress">
<scale android:drawable="@drawable/volumn_front" android:scaleWidth="100%" />
</item>
<item android:id="@*android:id/progress">
<scale android:drawable="@drawable/volumn_primary" android:scaleWidth="100%" />
</item>
</layer-list>
volumn_bg,volumn_primary,volumn_front都是图片
第三种SeekBar也是图片实现的:
<SeekBar
android:id="@+id/seekbar3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxHeight="4dp"
android:minHeight="4dp"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:progressDrawable="@drawable/player_setting_bright_progressbar"
android:thumb="@mipmap/player_settings_bright_thumb" />
player_setting_bright_progressbar.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/setting_bright_seekbar_background" />
<item android:id="@android:id/progress">
<scale
android:drawable="@drawable/setting_bright_seekbar_progress"
android:scaleWidth="100%" />
</item>
</layer-list>
setting_bright_seekbar_background,setting_bright_seekbar_progress是图片。
demo下载地址:http://download.csdn.net/download/sunbinkang/10193566
扫描二维码关注公众号,回复:
12666561 查看本文章
