我想我已经找到了一个使用kotlin for android的怪癖,或者在我对语法的理解上存在一些空白。Kotlin Android Button.onClickListener导致NoSuchMethodError
试图设置一个按钮的onClickListener
抛出一个NoSuchMethodError
这里的过错
button.setOnClickListener(Button.OnClickListener {
fun onClick(view: View){
val intent : Intent = Intent(this,DetailActivity::class.java)
if(obj is String) {
intent.putExtra("Topic", obj)
}
startActivity(intent)
}
})
和这里的堆栈跟踪输出
java.lang.NoSuchMethodError: No static method OnClickListener(Lkotlin/jvm/functions/Function1;)Landroid/view/View$OnClickListener; in class Landroid/widget/Button; or its super classes (declaration of 'android.widget.Button' appears in /system/framework/framework.jar:classes2.dex)
任何人都知道怎么了代码?