Przyciski opcji pozwalają użytkownikowi wybrać jedną opcję z zestawu wzajemnie wykluczających się . Użyj przycisków, jeśli użytkownik chce zobaczyć wszystkie dostępne opcje na liście produktów. Jeśli nie musisz pokazywać wszystkich opcji, użyj spinner.
.Aby utworzyć każdą opcję, utwórz
RadioButton
w układzie. Przyciski opcji wzajemnie się wykluczają, więc pogrupuj je wewnątrz
w
RadioGroup
System dba o to, aby w grupie można było wybrać tylko jedną opcję.
za jednym razem.
Reagowanie na zdarzenia kliknięcia
Gdy użytkownik wybierze przycisk,
RadioButton
obiekt odbiera zdarzenie kliknięcia.
Ten przykład pokazuje reakcję na kliknięcie przycisku
Obiekt RadioButton
w grupie:
<?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>
W Activity
lub Fragment
, które hostują tę aktualizację
układ, znaleźć przyciski i ustawić detektor zmian dla każdego z nich,
następujące:
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"); }
W tym przykładzie, gdy użytkownik kliknie jedną z opcji, pojawi się komunikat wydruków w Logcat.