Android ¿Cómo obtengo correctamente el valor de un Switch?
Estoy creando una aplicación de Android que utiliza un conmutador . Estoy tratando de escuchar los cambios y obtener el valor cuando se cambia. Tengo dos preguntas al usar los conmutadores:
- ¿Qué
action listener
utilizo? - ¿Cómo obtengo el valor del
switch
?
Switch s = (Switch) findViewById(R.id.SwitchID); if (s != null) { s.setOnCheckedChangeListener(this); } /* ... */ public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { Toast.makeText(this, "The Switch is " + (isChecked ? "on" : "off"), Toast.LENGTH_SHORT).show(); if(isChecked) { //do stuff when Switch is ON } else { //do stuff when Switch if OFF } }
Dado que se extiende desde CompoundButton
( docs ), puede utilizar setOnCheckedChangeListener()
para escuchar los cambios; isChecked()
para obtener el estado actual del botón.