将单选按钮添加到您的应用

尝试 Compose 方式
Jetpack Compose 是 Android 推荐的界面工具包。了解如何在 Compose 中添加组件。

单选按钮让用户可以从一组互斥选项中选择一个选项。如果用户需要看到所有可用选项的列表,请使用单选按钮。如果没有必要显示所有选项,请改用微调器

An example of radio buttons from material.io
图 1. 来自 Material Design 的单选按钮示例。

要创建每个单选按钮选项,请在布局中创建一个 RadioButton。由于单选按钮是互斥的,因此将它们分组到 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>

在此布局所在的 ActivityFragment 中,查找您的单选按钮并为每个按钮设置一个更改监听器,如下所示

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 中会打印一条消息。