属性
本文只为记录Seekbar控件属性使用,如有未提及的重要属性可下方评论补充
Seekbar滑块周围透明解决方法
android:splitTrack="false"
Seekbar进度条填充不满解决方法
android:paddingEnd="0dp"
android:paddingStart="0dp"
Seekbar进度条高度(progressDrawable高度),两个属性同时使用效果更好
android:minHeight="2dp"
android:maxHeight="2dp"
Seekbar滑块偏移距离
android:thumbOffset="0dp"
Seekbar默认拖拽滑块时四周会出现阴影
android:duplicateParentState="true"
SeekBar禁止手动拖动
“在xml设置该属性无效,必须在代码中调用”
seekbar.setEnabled(false)
默认样式参考
如果需要自定义thumb可根据下面官方给出的样式作为参考,实现thumb根据状态切换drawable
android:thumb默认样式 @drawable/abc_seekbar_thumb_material
<selector xmlns:android="http://schemas.android.com/apk/res/android"
android:constantSize="true">
<item android:state_enabled="false" android:state_pressed="true">
<bitmap android:src="@drawable/abc_scrubber_control_off_mtrl_alpha"
android:gravity="center"/>
</item>
<item android:state_enabled="false">
<bitmap android:src="@drawable/abc_scrubber_control_off_mtrl_alpha"
android:gravity="center"/>
</item>
<item android:state_pressed="true">
<bitmap android:src="@drawable/abc_scrubber_control_to_pressed_mtrl_005"
android:gravity="center"/>
</item>
<item>
<bitmap android:src="@drawable/abc_scrubber_control_to_pressed_mtrl_000"
android:gravity="center"/>
</item>
</selector>
indeterminateDrawable默认样式@drawable/abc_seekbar_track_material
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background"
android:drawable="@drawable/abc_scrubber_track_mtrl_alpha"/>
<item android:id="@android:id/secondaryProgress">
<scale android:scaleWidth="100%">
<selector>
<item android:state_enabled="false">
<color android:color="@android:color/transparent"/>
</item>
<item android:drawable="@drawable/abc_scrubber_primary_mtrl_alpha"/>
</selector>
</scale>
</item>
<item android:id="@android:id/progress">
<scale android:scaleWidth="100%">
<selector>
<item android:state_enabled="false">
<color android:color="@android:color/transparent"/>
</item>
<item android:drawable="@drawable/abc_scrubber_primary_mtrl_alpha"/>
</selector>
</scale>
</item>
</layer-list>
android:progressDrawable默认样式@drawable/abc_seekbar_track_material
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background"
android:drawable="@drawable/abc_scrubber_track_mtrl_alpha"/>
<item android:id="@android:id/secondaryProgress">
<scale android:scaleWidth="100%">
<selector>
<item android:state_enabled="false">
<color android:color="@android:color/transparent"/>
</item>
<item android:drawable="@drawable/abc_scrubber_primary_mtrl_alpha"/>
</selector>
</scale>
</item>
<item android:id="@android:id/progress">
<scale android:scaleWidth="100%">
<selector>
<item android:state_enabled="false">
<color android:color="@android:color/transparent"/>
</item>
<item android:drawable="@drawable/abc_scrubber_primary_mtrl_alpha"/>
</selector>
</scale>
</item>
</layer-list>