Onay kutuları, kullanıcının bir grup seçenek arasından bir veya daha fazlasını belirlemesine olanak tanır. Onay kutusu seçeneklerini genellikle dikey bir listede sunarsınız.
Her onay kutusu seçeneğini oluşturmak için düzeninizde bir CheckBox oluşturun. Onay kutusu seçenekleri kullanıcının birden çok öğe seçmesine olanak tanıdığından her onay kutusu ayrı olarak yönetilir ve her biri için bir tıklama işleyici kaydetmeniz gerekir.
Tıklama etkinliklerine yanıt verme
Bir listede CheckBox nesneyle bir düzen oluşturarak başlayın:
<?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>
Düzeniniz hazır olduğunda Activity veya Fragment sayfanıza gidin, CheckBox görünümlerinizi bulun ve aşağıdaki örnekte gösterildiği gibi bir değişiklik işleyici ayarlayın:
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"); }
Önceki kod, onay kutularının durumu her değiştiğinde Logcat'te bir mesaj yazdırır.