Mit Kästchen können Nutzer eine oder mehrere Optionen aus einer Gruppe auswählen. Normalerweise werden Kästchenoptionen in einer vertikalen Liste angezeigt.
Erstellen Sie für jede Kästchenoption ein CheckBox
in Ihrem Layout. Da der Nutzer mithilfe der Kästchenoptionen mehrere Elemente auswählen kann, wird jedes Kästchen separat verwaltet und Sie müssen für jedes einen Klick-Listener registrieren.
Auf Klickereignisse reagieren
Erstellen Sie zuerst ein Layout mit CheckBox
-Objekten in einer Liste:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <CheckBox android:id="@+id/checkbox_meat" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Meat" /> <CheckBox android:id="@+id/checkbox_cheese" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Cheese"/> </LinearLayout>
Sobald das Layout bereit ist, rufen Sie Activity
oder Fragment
auf, suchen Sie Ihre CheckBox
-Ansichten und legen Sie wie im folgenden Beispiel einen Änderungs-Listener fest:
Kotlin
findViewById<CheckBox>(R.id.checkbox_meat) .setOnCheckedChangeListener { buttonView, isChecked -> Log.d("CHECKBOXES", "Meat is checked: $isChecked") } findViewById<CheckBox>(R.id.checkbox_cheese) .setOnCheckedChangeListener { buttonView, isChecked -> Log.d("CHECKBOXES", "Cheese is checked: $isChecked") }
Java
findViewById<CheckBox>(R.id.checkbox_meat) .setOnCheckedChangeListener { buttonView, isChecked -> Log.d("CHECKBOXES", "Meat is checked: $isChecked"); } findViewById<CheckBox>(R.id.checkbox_cheese) .setOnCheckedChangeListener { buttonView, isChecked -> Log.d("CHECKBOXES", "Cheese is checked: $isChecked"); }
Der vorherige Code gibt jedes Mal eine Meldung in Logcat aus, wenn sich der Status der Kontrollkästchen ändert.