我对Kotlin很新,我正在使用Anko DSL(带有一些XML)来生成警报。我的问题是,当我点击按钮时,onClick{ ... }
功能不会发生。其他一切都很好,这只是一个问题
fab.setOnClickListener { view ->
alert {
title = "Add Board"
customView {
include<View>(R.layout.alert_xml) {
this.spinner.adapter = adapter
info("Alert loaded")
val boardSpinner = this.spinner
val boardText = this.board_text
positiveButton("OK") {
onClick {
info("Testing")
}
}
}
}
}.show()
}
答案 0 :(得分:3)
positiveButton
所采用的lambda参数不是设置函数,而是单击侦听器本身,因此您可以直接在其中编写代码:
positiveButton("OK") {
info("Testing")
}
您在其中调用的onClick
函数来自另一个外部作用域,并且正在覆盖其中一个外部视图的侦听器,可能是所包含视图的根的侦听器XML。