Vous pouvez définir l'un drawable qui sont utilisés pour l'arrière-plan, et le sélecteur de la partie comme ceci:
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:thumb="@drawable/switch_thumb"
android:track="@drawable/switch_bg" />
Maintenant, vous devez créer un sélecteur qui définit les différents états de l'aiguilleur drawable.
Ici les copies à partir de l'Android sources:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="false" android:drawable="@drawable/switch_thumb_disabled_holo_light" />
<item android:state_pressed="true" android:drawable="@drawable/switch_thumb_pressed_holo_light" />
<item android:state_checked="true" android:drawable="@drawable/switch_thumb_activated_holo_light" />
<item android:drawable="@drawable/switch_thumb_holo_light" />
</selector>
Ceci définit le pouce drawable, l'image est déplacée au-dessus de l'arrière-plan. Il y a quatre ninepatch les images utilisées pour le curseur:
Le désactivé version (xhdpi version Android est l'utilisation d')
La touche de curseur:
Le curseur activé (l'état):
La version par défaut (état off):
Il y a également trois états différents pour l'arrière-plan qui sont définis dans le sélecteur suivant:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="false" android:drawable="@drawable/switch_bg_disabled_holo_dark" />
<item android:state_focused="true" android:drawable="@drawable/switch_bg_focused_holo_dark" />
<item android:drawable="@drawable/switch_bg_holo_dark" />
</selector>
Le désactivé version:
La version:
Et la version par défaut:
Pour avoir un style interrupteur il suffit de créer deux sélecteurs, les mettre à votre Commutateur d'Afficher et de modifier ensuite les sept images de votre style désiré.