2015-11-30 61 views
2

我想製作一個自定義開關,如下所示。創建自定義平面開關android

enter image description here

enter image description here

我創建爲一二繪製資源是switch_bg,另一個是tracker_bg。

switch_bg.xml

<?xml version="1.0" encoding="utf-8"?> 

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/thumb_on" android:state_pressed="true" /> 
    <item android:drawable="@drawable/thumb_off" android:state_enabled="false" /> 
    <item android:drawable="@drawable/thumb_on" android:state_checked="true" /> 
    <item android:drawable="@drawable/thumb_off" /> 
</selector> 

tracker_bg.xml

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/ic_tracker" android:state_enabled="false" /> 
    <item android:drawable="@drawable/ic_tracker" android:state_pressed="true" /> 
    <item android:drawable="@drawable/ic_tracker" android:state_checked="true" /> 
    <item android:drawable="@drawable/ic_tracker" /> 
</selector> 

,並在主XML我把下面的代碼。

<Switch 
    android:id="@+id/switch1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:checked="true" 
    android:layout_marginRight="20dp" 
    android:thumb="@drawable/switch_bg" 
    android:track="@drawable/track_bg"/> 

請指導我我做錯了什麼或者我身邊缺少什麼東西。

+0

好像你的代碼很好 – droidev

+0

是的,但我沒有從上面的代碼得到慾望的結果。 –

+0

@ drawable/thumb_on和@ drawable/thumb_off是圖像文件還是xml? – droidev

回答

0

試試這個樣本,它可能會幫助你。 Click here