Android SeekBar(ProgressBar) 常用设置

Android SeekBar 常用设置

滑块设置

android:thumb属性用来指定滑块的样子,同时会影响整个进度条的尺寸

进度条设置

android:progressDrawable属性用来控制整个进度条的样式,最好是drawable[layer-list],可以分别指定背景,二级进度条,一级进度条。即background,secondaryProgress,progress。在layer-list文件里面需要按这三个顺序指定对应的样式,以下提供一个例子:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@android:id/background"
        android:gravity="center_vertical|fill_horizontal">
        <shape android:shape="rectangle">
            <padding android:left="0dp" />
            <size android:height="5dp" />
            <solid android:color="#4000" />
            <corners android:radius="3dp" />
        </shape>
    </item>
    <item
        android:id="@android:id/secondaryProgress"
        android:gravity="center_vertical|fill_horizontal">
        <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"
        android:gravity="center_vertical|fill_horizontal">
        <clip>
            <shape android:shape="rectangle">
                <size android:height="5dp" />
                <solid android:color="#000" />
                <corners android:radius="3dp" />
            </shape>
        </clip>
    </item>
</layer-list>

没有填充满控件的处理

默认情况下SeekBar的样式并没有填充满整个控件尺寸,需要单独将android:paddingLeft/android:paddingRight设置为0,使用统一属性设置android:padding都不行。另外一个属性android:thumbOffset可以控制滑块的偏移

posted @   枫叶孤星  阅读(333)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示