تسمح أزرار الاختيار للمستخدم باختيار خيار واحد من مجموعة من الخيارات التي يستبعد أحدها الآخر. استخدِم أزرار الاختيار إذا كان المستخدم بحاجة إلى الاطّلاع على كل الخيارات المتاحة مرتبة. إذا لم يكن من الضروري عرض جميع الخيارات، استخدِم أداة اختيار بدلاً من ذلك.
لإنشاء كل خيار من خيارات زر الاختيار، أنشئ رمزًا
RadioButton
في تنسيقك. بما أنّ أزرار الاختيار لا يمكن استخدامها مع بعضها، اجمعها داخل
a
RadioGroup
.
يضمن النظام إمكانية اختيار زر اختيار واحد فقط ضمن مجموعة في كل مرة.
الردّ على أحداث النقر
عندما يختار المستخدم زر اختيار، يتلقّى عنصر
RadioButton
المقابل حدث النقر.
يوضّح المثال التالي تفاعلًا مع نقر المستخدم على عنصر
RadioButton
في مجموعة:
<?xml version="1.0" encoding="utf-8"?> <RadioGroup android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <RadioButton android:id="@+id/radio_pirates" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Pirates"/> <RadioButton android:id="@+id/radio_ninjas" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Ninjas"/> </RadioGroup>
ضمن Activity
أو Fragment
الذي يستضيف
هذا التنسيق، ابحث عن أزرار الاختيار واضبط مستمع تغييرات لكل منها على النحو التالي:
Kotlin
findViewById<RadioButton>(R.id.radio_pirates).setOnCheckedChangeListener { buttonView, isChecked -> Log.d("RADIO", "Pirates is checked: $isChecked") } findViewById<RadioButton>(R.id.radio_ninjas).setOnCheckedChangeListener { buttonView, isChecked -> Log.d("RADIO", "Ninjas is checked: $isChecked") }
Java
findViewById<RadioButton>(R.id.radio_pirates).setOnCheckedChangeListener { buttonView, isChecked -> Log.d("RADIO", "Pirates is checked: $isChecked"); } findViewById<RadioButton>(R.id.radio_ninjas).setOnCheckedChangeListener { buttonView, isChecked -> Log.d("RADIO", "Ninjas is checked: $isChecked"); }
في هذا المثال، عندما ينقر المستخدم على أحد الأزرار الاختيارية، تتم طباعة رسالة في Logcat.