【问题标题】:Kotlin / Anko button onClick not workingKotlin / Anko 按钮 onClick 不起作用
【发布时间】:2017-06-13 22:53:42
【问题描述】:

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

【问题讨论】:

    标签: android kotlin anko


    【解决方案1】:

    positiveButton 接受的 lambda 参数不是设置函数,而是点击监听器本身,所以你可以直接在里面写代码:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-10
      • 1970-01-01
      • 2012-03-26
      • 2015-02-24
      • 2017-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多