Uygulamanıza onay kutuları ekleme

Oluşturma yöntemini deneyin
Jetpack Compose, Android için önerilen kullanıcı arayüzü araç setidir. Compose'da bileşenleri nasıl ekleyeceğinizi öğrenin.

Onay kutuları, kullanıcının bir dizi seçenek arasından bir veya daha fazla seçenek belirlemesini sağlar. Onay kutusu seçeneklerini genellikle dikey bir liste halinde sunarsınız.

item.io'daki onay kutuları örneğini gösteren resim
Şekil 1. Materyal Tasarım Onay Kutusu'ndaki onay kutuları örneği.

Her bir onay kutusu seçeneğini oluşturmak için düzeninizde bir CheckBox oluşturun. Onay kutusu seçenekleri, kullanıcının birden fazla öğ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

Listedeki 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ı her durum değiştirdiğinde Logcat'te bir mesaj yazdırır.