Kotlin / Anko按钮onClick不工作

时间:2017-06-13 22:53:42

标签: android kotlin anko

我对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()
    }

1 个答案:

答案 0 :(得分:3)

positiveButton所采用的lambda参数不是设置函数,而是单击侦听器本身,因此您可以直接在其中编写代码:

positiveButton("OK") {
    info("Testing")
}

您在其中调用的onClick函数来自另一个外部作用域,并且正在覆盖其中一个外部视图的侦听器,可能是所包含视图的根的侦听器XML。