Sie können die für den Hintergrund verwendeten Drawables und den Switcher-Teil folgendermaßen definieren:
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:thumb="@drawable/switch_thumb"
android:track="@drawable/switch_bg" />
Jetzt müssen Sie einen Selektor erstellen, der die verschiedenen Status für den umschaltbaren Umschalter definiert. Hier die Kopien aus den Android-Quellen:
<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>
Dies definiert den Daumen zeichnbar, das Bild, das über den Hintergrund verschoben wird. Für den Schieberegler werden vier Ninepatch- Bilder verwendet:
Die deaktivierte Version (von Android verwendete xhdpi-Version)
Der gedrückte Schieberegler:
Der aktivierte Schieberegler (Status "Ein"):
Die Standardversion (Status "Aus"):
Es gibt auch drei verschiedene Zustände für den Hintergrund, die in der folgenden Auswahl definiert sind:
<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>
Die deaktivierte Version:
Die fokussierte Version:
Und die Standardversion:
Um einen gestalteten Schalter zu erhalten, erstellen Sie einfach diese beiden Selektoren, stellen Sie sie auf Ihre Schalteransicht ein und ändern Sie dann die sieben Bilder in den gewünschten Stil.