ModificadorSwitch

El Switch widget (se muestra a continuación) permite a los usuarios alternar entre dos Estados, como en o desactivado.The Switch widget (shown below) allows a user to toggle between two states, such as ON or OFF. El Switch valor predeterminado es OFF.The Switch default value is OFF. A continuación se muestra el widget en sus estados activado y desactivado:The widget is shown below in both its ON and OFF states:

Capturas de pantalla de un widget de conmutador en Estados y activarScreenshots of a Switch widget in OFF and ON states

Creación de un conmutadorCreating a Switch

Para crear un conmutador, simplemente declare un Switch elemento XML como sigue:To create a switch, simply declare a Switch element in XML as follows:

<Switch android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

Esto crea un conmutador básico, como se muestra a continuación:This creates a basic switch as shown below:

Captura de pantalla de la aplicación de demostración muestra un conmutador en el estado desactivadoScreenshot of demo app displaying a Switch in the OFF state

Cambiar los valores predeterminadosChanging Default Values

El texto que muestra el control para el ON y OFF Estados y el valor predeterminado son configurables.Both the text that the control displays for the ON and OFF states and the default value are configurable. Por ejemplo, para realizar el cambio de valor predeterminado es ON y leer NO o Sí en lugar de encendido y apagado, podemos establecer el checked, textOn, y textOff atributos en el siguiente código XML.For example, to make the Switch default to ON and read NO/YES instead of OFF/ON, we can set the checked, textOn, and textOff attributes in the following XML.

<Switch android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="true"
        android:textOn="YES"
        android:textOff="NO" />

Proporcionar un títuloProviding a Title

El Switch widget también admite como una etiqueta de texto estableciendo el text atributo como sigue:The Switch widget also supports including a text label by setting the text attribute as follows:

<Switch android:text="Is Xamarin.Android great?"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="true"
        android:textOn="YES"
        android:textOff="NO" />

Este marcado crea la siguiente captura de pantalla en tiempo de ejecución:This markup produces the following screenshot at runtime:

Captura de pantalla de la aplicación de demostración con texto horizontalmente anterior el widget de conmutadorScreenshot of demo app with text horizontally preceding the Switch widget

Cuando un Switchde cambios de valor, genera un CheckedChange eventos.When a Switch's value changes, it raises a CheckedChange event. Por ejemplo, en el código siguiente se captura este evento y presentar un Toast widget con un mensaje basado en el isChecked valor Switch, que se pasa al controlador de eventos como parte de la CompoundButton.CheckedChangeEventArg argumento.For example, in the following code we capture this event and present a Toast widget with a message based upon the isChecked value of Switch, which is passed to the event handler as part of the CompoundButton.CheckedChangeEventArg argument.

Switch s = FindViewById<Switch> (Resource.Id.monitored_switch);
           
s.CheckedChange += delegate(object sender, CompoundButton.CheckedChangeEventArgs e) {
    var toast = Toast.MakeText (this, "Your answer is " +
        (e.IsChecked ?  "correct" : "incorrect"), ToastLength.Short);
    toast.Show ();
};