Switch控件的樣式修改

Switch控件的樣式修改

可以為Switch的track,thumb屬性添加選中和非選中狀態(tài)的drawable

1、創(chuàng)建Deawablw:

thumb的deawable,(thumb表示switch中圓形按鈕的背景)

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="false">
        <shape>
            <corners android:radius="24dp" />
            <solid android:color="@android:color/white" />

            <!--設(shè)置大小時(shí),應(yīng)注意Switch顯示時(shí)UI內(nèi)容的高度會(huì)以此高度為依據(jù)-->
            <size android:width="24dp" android:height="24dp" />

            <!--添加一個(gè)邊,使UI更好看,
            當(dāng)false時(shí)為未選擇狀態(tài)的底圖顏色,true時(shí)為選擇狀態(tài)的底圖顏色。-->
            <stroke android:width="1dp" android:color="@android:color/darker_gray" />
        </shape>
    </item>

    <item android:state_checked="true">
        <shape>
            <corners android:radius="24dp" />
            <solid android:color="@android:color/white" />
            <size android:width="24dp" android:height="24dp" />
            <stroke android:width="1dp" android:color="@android:color/holo_green_light" />
        </shape>
    </item>
</selector>

track的drawable:(track描述的是我們看就的switch控件按鈕滑動(dòng)區(qū)域背景)

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true">
        <shape>

            <!--這個(gè)圓角大小最好與thumb中的圓角大小保持一致-->
            <corners android:radius="24dp"/>
            <solid android:color="@android:color/holo_green_light"/>
        </shape>
    </item>

    <item android:state_checked="false">
        <shape>
            <corners android:radius="24dp"/>
            <solid android:color="@android:color/darker_gray"/>
        </shape>
    </item>
</selector>

2、在布局中應(yīng)用

<Switch
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="true"
        android:thumb="@drawable/selector_switch_thumb"
        android:track="@drawable/selector_switch_track" />

<Switch
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="16dp"
    android:checked="false"
    android:thumb="@drawable/selector_switch_thumb"
    android:track="@drawable/selector_switch_track" />

其他樣式

如果需要矩形的,可以去掉track和thumb的圓角,或者設(shè)置為一下較小的圓角

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容