如果在 Android 对话框中选择了相同的选项,如何不做任何事情?
How to do nothing if the same option is selected in an Android dialog?
我有以下对话框:
val alertDialog: AlertDialog.Builder = AlertDialog.Builder(context)
val options = arrayOf("Red", "Blue", "Green")
alertDialog.setTitle("Select a color")
alertDialog.setSingleChoiceItems(options, 1) { dialog, position ->
logErrorMessage("position: " + position)
dialog.dismiss()
}
val alert: AlertDialog = alertDialog.create()
alert.show()
当我将 1
传递给 setSingleChoiceItems
时,默认选择的值为“蓝色”。每次单击三个选项之一时,都会打印 position
。有什么办法只有在更改选项后才能获取该日志语句?如果仍然选择相同的选项,那么我不想要日志语句?谢谢
假设您不更改默认选定值,只需进行条件检查以确保该位置不等于 1
。如果它更动态,则存储当前位置并进行比较:
val alertDialog: AlertDialog.Builder = AlertDialog.Builder(context)
val options = arrayOf("Red", "Blue", "Green")
alertDialog.setTitle("Select a color")
alertDialog.setSingleChoiceItems(options, 1) { dialog, position ->
if(position != 1) {
logErrorMessage("position: " + position)
}
dialog.dismiss()
}
val alert: AlertDialog = alertDialog.create()
alert.show()
我有以下对话框:
val alertDialog: AlertDialog.Builder = AlertDialog.Builder(context)
val options = arrayOf("Red", "Blue", "Green")
alertDialog.setTitle("Select a color")
alertDialog.setSingleChoiceItems(options, 1) { dialog, position ->
logErrorMessage("position: " + position)
dialog.dismiss()
}
val alert: AlertDialog = alertDialog.create()
alert.show()
当我将 1
传递给 setSingleChoiceItems
时,默认选择的值为“蓝色”。每次单击三个选项之一时,都会打印 position
。有什么办法只有在更改选项后才能获取该日志语句?如果仍然选择相同的选项,那么我不想要日志语句?谢谢
假设您不更改默认选定值,只需进行条件检查以确保该位置不等于 1
。如果它更动态,则存储当前位置并进行比较:
val alertDialog: AlertDialog.Builder = AlertDialog.Builder(context)
val options = arrayOf("Red", "Blue", "Green")
alertDialog.setTitle("Select a color")
alertDialog.setSingleChoiceItems(options, 1) { dialog, position ->
if(position != 1) {
logErrorMessage("position: " + position)
}
dialog.dismiss()
}
val alert: AlertDialog = alertDialog.create()
alert.show()