לחצני בחירה מאפשרים למשתמש לבחור אפשרות אחת מתוך קבוצה של אפשרויות בלעדיות. כדאי להשתמש בלחצני בחירה אם המשתמש צריך לראות את כל האפשרויות הזמינות. אם אין צורך להציג את כל האפשרויות, אפשר להשתמש במקום זאת בבורר.
כדי ליצור כל אפשרות של לחצן הבחירה, יוצרים RadioButton
בפריסה. מכיוון שכפתורי בחירה הם בלעדיים זה לזה, צריך לקבץ אותם בתוך RadioGroup
.
המערכת מוודאת שאפשר לבחור רק לחצן בחירה אחד בקבוצה בכל פעם.
תגובה לאירועי קליקים
כשהמשתמש בוחר לחצן רדיו, אובייקט RadioButton
התואם מקבל אירוע on-click.
בדוגמה הבאה מוצגת תגובה למשתמש שמקיש על אובייקט 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.