Mithilfe von Kästchen können Nutzer eine oder mehrere Optionen aus einer Gruppe auswählen. Üblicherweise präsentieren Sie Kästchenoptionen in einer vertikalen Liste.
Erstellen Sie für die einzelnen Kästchenoptionen eine CheckBox
im Layout. Da der Nutzer mit einer Reihe von Kästchenoptionen mehrere Elemente auswählen kann, wird jedes Kästchen separat verwaltet und Sie müssen für jedes Kästchen 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>
Wenn das Layout fertig ist, rufen Sie Activity
oder Fragment
auf, suchen Sie nach den 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 Nachricht in Logcat aus, wenn sich der Status der Kästchen ändert.