Android筆記之SeekBar的使用及問題

常用方式

在xml中直接添加,個人比較傾向於使用支持包中的AppCompatSeekBar控件:

    <android.support.v7.widget.AppCompatSeekBar
        android:id="@+id/seekBar"
        style="?android:attr/progressBarStyleHorizontal"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:layout_marginTop="2dp"
        android:layout_marginEnd="16dp"
        android:max="100"
        android:paddingStart="0dp"
        android:paddingEnd="0dp"
        android:splitTrack="false"
        android:thumb="@drawable/icon_player_circle" />

效果:
在這裏插入圖片描述

一些設置及問題

設置進度球:
        android:thumb="@drawable/icon_player_circle"
設置自定義進度條:
       android:progressDrawable="@drawable/seekbar_brightness_selector"

進度條樣式drawable/seekbar_brightness_selector.xml:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <!--定義seekbar滑動條的底色-->
    <item android:id="@android:id/background">
        <shape>
            <corners android:radius="6dp" />
            <solid android:color="#e4e4e4" />
        </shape>
    </item>
    <!--定義seekbar滑動條進度顏色-->
    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <corners android:radius="6dp" />
                <solid android:color="#32b566" />
            </shape>
        </clip>
    </item>
</layer-list>
進度條到控件左右邊緣存在大的空隙,如何移除?
        android:paddingStart="0dp"
        android:paddingEnd="0dp"
進度球在左右邊緣被切割1半,如何顯示完整?

爲其父控件添加以下屬性:

android:clipChildren="false"

或者

android:thumbOffset="0dp"
進度球資源圖片的透明區域顯示白色,失去透明通道,如何恢復?
android:splitTrack="false"
調整進度條的高度
android:maxHeight="12dp"
android:minHeight="12dp"
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章