Vous pouvez définir les dessinables utilisés pour l'arrière-plan et la partie du sélecteur comme ceci:
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:thumb="@drawable/switch_thumb"
android:track="@drawable/switch_bg" />
Vous devez maintenant créer un sélecteur qui définit les différents états du mélangeur pouvant être dessiné. Voici les copies des sources Android:
<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>
Cela définit le pouce dessiné, l'image qui est déplacée sur l'arrière-plan. Il y a quatre images à neuf patchs utilisées pour le curseur:
La version désactivée (version xhdpi utilisée par Android)
Le curseur enfoncé:
Le curseur activé (état activé):
La version par défaut (état désactivé):
Il existe é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>
La version désactivée:
La version focalisée:
Et la version par défaut:
Pour avoir un interrupteur stylé, créez simplement ces deux sélecteurs, réglez-les sur votre Switch View, puis modifiez les sept images selon le style souhaité.