Les cases d'option permettent à l'utilisateur de sélectionner une option parmi un ensemble d'options s'excluant mutuellement. Utilisez les cases d'option si l'utilisateur a besoin de voir toutes les options disponibles. S'il n'est pas nécessaire d'afficher toutes les options, utilisez plutôt un spinner.
Pour créer chaque option de case d'option, créez un RadioButton
dans votre mise en page. Étant donné que les cases d'option s'excluent mutuellement, regroupez-les dans un RadioGroup
.
Le système garantit qu'une seule case d'option au sein d'un groupe peut être sélectionnée à la fois.
Répondre aux événements de clic
Lorsque l'utilisateur sélectionne une case d'option, l'objet RadioButton
correspondant reçoit un événement lors d'un clic.
L'exemple suivant montre une réaction lorsque l'utilisateur appuie sur un objet RadioButton
dans un groupe:
<?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>
Dans les éléments Activity
ou Fragment
qui hébergent cette mise en page, recherchez les cases d'option et définissez un écouteur de modification pour chacune d'elles, comme suit:
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"); }
Dans cet exemple, lorsque l'utilisateur appuie sur l'une des cases d'option, un message s'affiche dans Logcat.