Android “Kotlin材质设计”对话框“获取选定项”选项
当我关闭对话框时,我需要获取选中的选项名称(文本),而不是位置,但它会继续返回项目位置Android “Kotlin材质设计”对话框“获取选定项”选项,android,kotlin,material-design,Android,Kotlin,Material Design,当我关闭对话框时,我需要获取选中的选项名称(文本),而不是位置,但它会继续返回项目位置 code pType.setOnClickListener{ val singleItems = arrayOf("Item 1", "Item 2", "Item 3") val checkedItem = 0 pType.text = null MaterialAlertDialogBuilder(this)
code
pType.setOnClickListener{
val singleItems = arrayOf("Item 1", "Item 2", "Item 3")
val checkedItem = 0
pType.text = null
MaterialAlertDialogBuilder(this)
.setTitle(resources.getString(R.string.project_type))
.setNeutralButton(resources.getString(R.string.cancel)) { dialog, which ->
// Respond to neutral button press
}
.setPositiveButton(resources.getString(R.string.ok)) { dialog, which ->
// Respond to positive button press
}
// Single-choice items (initialized with checked item)
.setSingleChoiceItems(singleItems, checkedItem) { dialog, which ->
// Respond to item chosen
pType.setText(checkedItem.toString())
}
.show()
}
问题
val checkedItem=0
无论我选择的选项始终选项0
处于选中状态,我如何避免这种情况pType.setText(checkedItem.toString())
尝试:
这是正确的
pType.setText(singleItems[which])
@mafortis如果这对您有帮助,您应该将其标记为答案out@a_local_nobody这不是正确的答案为什么我要标记它?我甚至提供了正确的答案。他/她不想更新答案。为什么我会接受错误的答案?啊,你是对的,我认为这是正确的无论我选择了什么选项始终选择选项0
除了第一次将其设为零之外,你永远不会给它分配其他值,所以它应该这样做。@a_local_nobody感谢没有显示如何分配其他值而不是0<代码>现在已经修好了没必要对它无礼。我只是说,如果您将某个东西声明为val
,它就不能更改,这就是val
的要点。如果您想更改它,那么它可能应该是一个var,或者您应该在需要时从某个地方读取它
pType.setText(singleItems[which])