运行代码点击ImageButton时报错

运行代码点击ImageButton时报错

问题描述:

运行代码点击ImageButton时报错,不管是自己编写的还是导入老师的文件都会报错

相关截图:

图片描述图片描述

相关代码:

在这里输入代码
log日志:
```2021-02-17 01:59:30.029 23811-23811/com.imooc.transitionanimation E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.imooc.transitionanimation, PID: 23811
    java.lang.IllegalStateException: Could not find method onClick(View) in a parent or ancestor Context for android:onClick attribute defined on view class android.widget.ImageButton with id 'btnInfo'
        at android.view.View$DeclaredOnClickListener.resolveMethod(View.java:4758)
        at android.view.View$DeclaredOnClickListener.onClick(View.java:4717)
        at android.view.View.performClick(View.java:5638)
        at android.view.View$PerformClick.run(View.java:22430)
        at android.os.Handler.handleCallback(Handler.java:751)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6198)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:891)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:781)
        
### 尝试过的解决方式:
>尝试为ImageButton设置单独的setOnClickListener方法,会报错findviewbyid(R.id.btnInfo)的控件为null,点击回调直接崩溃

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕雪 2021-02-18 15:59:02

同学,你好!你是不是把点击事件,注册到xml中了呢?fragment里得单独定义事件,不能在xml中。第二次你又改到哪里了呢?你得让UI加载完毕,并且是此fragment对应的xml才行哦。另外注意,修改代码后,要手动的删除APP,再重新运行,有时你不去手动删除,它有可能没有覆盖掉上一次的APP。祝:学习愉快!

  • mOverViewScene = Scene.getSceneForLayout(sceneRoot,R.layout.scene_overview,this);
    mInfoViewScene = Scene.getSceneForLayout(sceneRoot,R.layout.scene_info,this);

    老师,我也遇到了这个问题,但我改成将context改成this后可以正常运行,但我看到如果用this可能会遇到内存泄漏的问题,要怎么解决呢?



    2021-09-27 22:20:08
  • 这个问题还还好,注意在ondestory的时候 销毁 scene就行

    2021-09-30 11:49:59
  • 好的,谢谢😀

    2021-09-30 21:41:54
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师
插入代码