CheckBox en Android – Tutorial

En este corto tutorial te mostraré a interactuar con el widget de CheckBox en Android para ver cómo saber si está marcado, además de agregar un listener para cuando lo seleccionan o marcan.

Esto será en el lenguaje Java pero fácilmente se puede traducir a Kotlin.

Definir un CheckBox en Layout

Para declarar un CheckBox en Android usamos CheckBox así:

<CheckBox
  android:id="@+id/checkBoxTieneTrazo"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:text="¿Trazo?" />

Además de las propiedades de diseño como margen o alineación, se puede especificar el texto con text y también un id.

Referenciar CheckBox desde Java

Después podemos usar findViewById. La clase CheckBox se importa con:

import android.widget.CheckBox;

Y después se puede declarar así:

CheckBox checkBoxTieneTrazo = findViewById(R.id.checkBoxTieneTrazo);

Recuerda que si usas un fragmento, debes invocar a findViewById desde view.

Listener para escuchar cuando se marca o desmarca

Para escuchar cuando el usuario lo desmarca o marca, usamos un CompoundButton.OnCheckedChangeListener y lo establecemos con setOnCheckedChangeListener. Así:

checkBoxTieneTrazo.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
    @Override
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
        if (isChecked) {
            // 
        } else {
            //
        }
    }
});

En la función onCheckedChanged se nos pasa la vista y un booleano indicando si ha sido marcado o no. Con el mismo podemos hacer determinada cosa.

Saber si está marcado desde otra vista

Para terminar, veamos cómo saber si está marcado. Para ello simplemente invocamos a isChecked por ejemplo:

if (checkBoxTieneTrazo.isChecked()) {
    // Algo si está marcado
}

 

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *