Switch

Explicación del concepto de Switch.

Fuente: developer.android
Fuente: developer.android

DEFINICIÓN

Hereda de:

herencia Switch

Un Switch es un botón deslizante que permite elegir entre dos opciones. El usuario puede deslizar hacia un lado o hacia el otro para seleccionar o simplemente tocar el botoón como si fuera un CheckBox.

USO DESDE XML

ATRIBUTOS

android:showText

Indica con un Booleano si se muestra el texto de los atributos android:textOn y android:TextOff sobre el thumb.

android:splitTrack

Indica con un Booleano si se separa el Thumb del Track (true) o si se mantienen como si el Track estuviera debajo del Thumb (false).

android:switchMinWidth

Define la anchura mínima del botón.

android:switchPadding

Define la distancia mínima entre el Texto de android:text y el botón.

android:switchTextAppearance

Define la Apariencia del texto que se muestra sobre el Thumb, es decir el que se define en android:textOn y en android:textOff.

android:textOff

Define el texto que se muestra en el Thumb cuando el botón está en estado desmarcado.

android:textOn

Define el texto que se muestra en el Thumb cuando el botón está en estado desmarcado.

android:textStyle

Define el estilo del texto que se muestra con el atributo android:text.

android:thumb

Define el drawable que se muestra en el Thumb.

android:thumbTextPadding

Define el espacio entre los lados del Thumb y el texto en su interior.

android:thumbTint

Define el color del Thumb.

android:thumbTintMode

Define el modo de color del Thumb.

android:track

Define el drawable que se muestra en el Track.

android:trackTint

Define el color del Track.

android:TrackTintMode

Define el modo de color del Track.

android:typeface

El tipo de texto que se va a utilizar (normal, sans, serif, monospace).

PROGRAMAR EVENTOS DESDE CÓDIGO

La dinámica que siguen los Switch es similar a la de los ToggleButton por lo que vamos a utilizar el mismo código:

PERSONALIZACIÓN

circle-check

En este caso vamos a personalizarlo igual que los ToggleButton pero con imágenes vectoriales.

Para ello vamos a necesitar personalizar por un lado el Thumb y por el otro el Track.

El diseño será el siguiente:

Diseño del Switch
circle-info

Para definir ese borde del thumb que hace que parezca que flota, debemos generar un borde en el thumb (stroke) del mismo color que el track.

Personalizar Thumb

Vamos a utilizar una lista de estados para el Thumb:

Personalizar Track

Vamos a utilizar otra lista de estados para el Track:

Añadirlo al layout

Last updated