Android

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.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

Resetear GOOJPRT PT-210 MTP-II (Impresora térmica)

El día de hoy vamos a ver cómo restablecer la impresora térmica GOOJPRT PT-210 a…

1 semana hace

Proxy Android para impresora térmica ESC POS

Hoy voy a enseñarte cómo imprimir en una impresora térmica conectada por USB a una…

1 semana hace

Android – Servidor web con servicio en segundo plano

En este post voy a enseñarte a programar un servidor web en Android asegurándonos de…

1 semana hace

Cancelar trabajo de impresión con C++

En este post te quiero compartir un código de C++ para listar y cancelar trabajos…

1 mes hace

Copiar bytes de Golang a JavaScript con WebAssembly

Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…

2 meses hace

Imprimir PDF con Ghostscript en Windows de manera programada

Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…

2 meses hace