Seekbar属性参考

属性

本文只为记录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>

猜你喜欢

转载自blog.csdn.net/qq_39457683/article/details/125924726
今日推荐