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

Creador de credenciales web – Aplicación gratuita

Hoy te voy a presentar un creador de credenciales que acabo de programar y que…

1 semana hace

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

2 semanas hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

2 semanas hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

2 semanas hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

2 semanas hace

Esperar promesa para inicializar Store de Pinia con Vue 3

En este artículo te voy a enseñar cómo usar un "top level await" esperando a…

2 semanas hace

Esta web usa cookies.