2017-06-13 108 views
0

我对Kotlin相当陌生,而且我正在使用Anko DSL(通过一些XML)生成警报。我的问题是,当我点击按钮时onClick{ ... }函数不会发生。一切工作正常,这只是这一个问题Kotlin/Anko按钮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

拉姆达参数positiveButton需要的是不是一个设置功能,但点击监听器本身,所以你可以在它里面直接写代码:

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

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

+0

啊,我不知道是这样,谢谢! – Parker