Kotlin 中的 RadioGroup
Kotlin 编程语言的 RadioGroup 类用于创建一个包含多个 RadioButton 的容器。 RadioGroup 类有利于在其中放置一组单选按钮,因为该类为单选按钮添加了多排除范围功能。此功能可确保用户只能检查属于 RadioGroup 类的所有单选按钮中的一个。如果用户选中另一个单选按钮,RadioGroup 类将取消选中之前选中的单选按钮。当开发人员只想选择一个答案(例如询问用户的性别)时,此功能非常重要。
Kotlin 中 RadioGroup 类的类层次结构
RadioGroup 小部件的 XML 属性
XML Attributes | Description |
---|---|
android:id | To uniquely identify the RadioGroup |
android:background | To set a background colour |
android:onClick | A method to perform certain action when RadioGroup is clicked |
android:onClick | It’s a name of the method to invoke when the radio button clicked. |
android:visibility | Used to control the visibility i.e., visible, invisible or gone |
android:layout_width | To set the width |
android:layout_height | To set the height |
android:contentDescription | To give a brief description of the view |
android:checkedButton | Stores id of child radio button that needs to be checked by default within this radio group |
android:orientation | To fix the orientation constant of the view |
例子
在此示例中,将逐步演示如何创建 RadioGroup,它由 5 个 RadioButton 子项组成,它们要求用户选择 GeeksforGeeks 提供的课程。当用户选中其中一个 RadioButtons 并单击 Submit 按钮时,会出现一条显示所选选项的 toast 消息。
Note: Following steps are performed on Android Studio version 4.0
创建新项目
- 单击文件,然后单击新建 => 新建项目。
- 为项目模板选择“Empty Activity”。
- 选择语言为 Kotlin。
- 根据您的需要选择最低 SDK。
打开 activity_main.xml 文件
下面是用于添加 RadioGroup 及其 5 个 RadioButton 子项的activity_main.xml
文件的代码。还添加了一个普通的提交按钮来接受和显示用户选择的响应。
打开 MainActivity.kt 文件
下面是MainActivity.kt
文件的代码,用于访问 kotlin 文件中的 RadioGroup 小部件,并在用户选择单选按钮时显示适当的消息。
package com.example.sampleproject
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.view.View
import android.widget.Button
import android.widget.RadioButton
import android.widget.RadioGroup
import android.widget.Toast
import kotlinx.android.synthetic.main.activity_main.*
class MainActivity : AppCompatActivity() {
var radioGroup: RadioGroup? = null
lateinit var radioButton: RadioButton
private lateinit var button: Button
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// Display name of the Application
title = "RadioGroup in Kotlin"
// Assigning id of RadioGroup
radioGroup = findViewById(R.id.radioGroup1)
// Assigning id of Submit button
button = findViewById(R.id.submitButton)
// Actions to be performed
// when Submit button is clicked
button.setOnClickListener {
// Getting the checked radio button id
// from the radio group
val selectedOption: Int = radioGroup!!.checkedRadioButtonId
// Assigning id of the checked radio button
radioButton = findViewById(selectedOption)
// Displaying text of the checked radio button in the form of toast
Toast.makeText(baseContext, radioButton.text, Toast.LENGTH_SHORT).show()
}
}
}
修改字符串.xml 文件
该文件中列出了活动中使用的所有字符串,从应用程序名称到各种 RadioButton 的选项。
RadioGroup in Kotlin
Choose a GfG course
Amazon SDE Test Series
Placement 100
C++ STL
CS Core Subjects
DSA Self paced
Submit