java.lang.IllegalStateException: Could not find method startChat(View) in a parent or ancestor Context for android:onClick attribute defined on view class android.widget.Button with id 'Button' at android.view.View$DeclaredOnClickListener.resolveMethod(View.java:4479) at android.view.View$DeclaredOnClickListener.onClick(View.java:4443) at android.view.View.performClick(View.java:5198) at android.view.View$PerformClick.run(View.java:21147) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
出现场景:
在一个Button中定义了onclick属性,值为startChat。
在Activity中定义一个方法。
public void startChat(View view){}
运行时,点击按钮,就会出现这个异常。
这是因为activity继承的是AppCompatActivity,默认使用的主题是@style/AppTheme
把activity的主题去掉,再运行就不会报错了。
个人建议还是使用onClickListener设置监听。