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:

  1. ¿Qué action listener utilizo?
  2. ¿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.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.