Android java.lang.illegalstateexception在父或祖先上下文中找不到方法

Android java.lang.illegalstateexception在父或祖先上下文中找不到方法,android,kotlin,onclick,Android,Kotlin,Onclick,“我正在制作一个TictaToe应用程序。我试图制作一个点击按钮,但是 它显示了此类错误,应用程序正在崩溃。” 这是我的kotlin代码 fun btnclick(view:View) { val btn=view as Button var cell = 0 when (btn.id) { R.id.button1 -> cell = 1

“我正在制作一个TictaToe应用程序。我试图制作一个点击按钮,但是 它显示了此类错误,应用程序正在崩溃。”

这是我的kotlin代码

fun btnclick(view:View) {                               
        val btn=view as Button
        var cell = 0
        when (btn.id) {
            R.id.button1 -> cell = 1
            R.id.button2 -> cell = 2
            R.id.button3 -> cell = 3
            R.id.button4 -> cell = 4
            R.id.button5 -> cell = 5
            R.id.button6 -> cell = 6
            R.id.button7 -> cell = 7
            R.id.button8 -> cell = 8
            R.id.button9 -> cell = 9
        }
        playgame(cell, btn)
    }
下面是xml代码

                <Button
                    android:id="@+id/button1"
                    android:layout_width="45pt"
                    android:layout_height="45pt"
                    android:onClick="btnclick"
                     />
                <Button
                    android:id="@+id/button2"
                    android:layout_width="45pt"
                    android:layout_height="45pt"                    
                    android:onClick="btnclick"
                    android:textSize="45sp" />
                <Button
                    android:id="@+id/button3"
                    android:layout_width="45pt"
                    android:onClick="btnclick"
                    android:textSize="45sp" />
...so on

……等等

屏幕截图显示点击处理程序签名采用
按钮
参数

框架寻找一种方法,该方法采用
视图
参数

改变

fun btnclick(view:Button)


张贴你的日志我不认识科特林。但是,错误消息说它找不到id
按钮5
。你的
id
s看起来像
android:id=“@+id/button5”
。我很想说
“button5”!=“@+id/按钮5”
。对吗?nono按钮5与“@+id/按钮5”匹配。它显示了有关查看类的一些错误。但我不知道为什么它不起作用
fun btnclick(view: View?)