为什么我写上@OnClick注解之后运行程序会报错

来源:4-5 主界面搭建外层封装-5

tomlin_yuan

2020-02-11

具体错误:Caused by: java.lang.IllegalStateException: Required view ‘im_search’ with ID 2131296398 for method ‘onSearchMenuClick’ was not found.
图片描述
我看了后面的提示,结合百度,在@OnClick前面加上了@Optional,错误是没了,但是点击事件里的方法不执行了,求解

写回答

2回答

Qiujuer

2020-02-11

加上@Optional是错误的做法,这个出错很简单,就是你当前的界面没有:im_search 这个id的view存在呀。

你自己看看你当前类对应的layout xml中是否定义好了,另外是否在bind之前设置了这个layout到当前的界面上。

0
1
tomlin_yuan
非常感谢!
2020-05-24
共1条回复

tomlin_yuan

提问者

2020-02-11

老师我解决了

之前在主界面的xml文件中,有一个警告

//img1.sycdn.imooc.com/szimg/5e42696609d2261719201001.jpg

我就直接创建了一个,后面撤销,好像没有将其删掉,结果导致找不到ID

我到文件浏览器里将layout-v23这个文件夹删除后就没有这个问题了

1
2
NickCharlie
你看看是不是你的activity_main有两 一个是v23一个是正常的,其中一个可能会忘记写id,我就是这个毛病
2020-02-13
共2条回复

手把手开发完整的即时通讯App 客户端+服务端+MVP架构

客户端+服务端+MVP架构+封装思想+主流框架

1749 学习 · 872 问题

查看课程