【发布时间】:2021-02-16 20:45:41
【问题描述】:
详细信息:我有 2 个带有一些单选按钮的单选组。
我想要什么:用户只能从 2 个组中选择一个单选按钮。
我做了什么:
rgOne.setOnCheckedChangeListener(RadioGroup.OnCheckedChangeListener { group, checkedId ->
try {
val checkedRadioButtonId: Int = rgOne.checkedRadioButtonId
if (checkedRadioButtonId != null) {
oneItem = oneList[checkedRadioButtonId]
healthy = oneItem.code!!
AppGlobal.displayShortToast(
this, "You selected: " + oneItem.title
)
if (rgTwo.checkedRadioButtonId != -1) {
rgTwo.clearCheck()
}
}
} catch (e: Exception) {
e.printStackTrace()
}
})
rgTwo.setOnCheckedChangeListener(RadioGroup.OnCheckedChangeListener { group, checkedId ->
try {
val checkedRadioButtonId: Int = rgTwo.checkedRadioButtonId
if (checkedRadioButtonId != null) {
twoItem = twoList[checkedRadioButtonId]
unhealthy = twoItem.code!!
AppGlobal.displayShortToast(
this, "You selected: " + twoItem.title
)
if (rgOne.checkedRadioButtonId != -1) {
rgOne.clearCheck()
}
}
} catch (e: Exception) {
e.printStackTrace()
}
})
面对问题:当我调用这个 rgOne.clearCheck() 或 rgTwo.clearCheck() 时,再次调用整个无线电组单击的侦听器并取消选中我检查的内容。第一次完美工作,就像选择 nothig 时一样。
这段代码有什么问题,我需要改变什么。
【问题讨论】:
标签: android kotlin radio-button android-radiobutton android-radiogroup