findViewById==null? 小心android编译器的命名陷阱
来源:互联网 发布:mac口红一盒 编辑:程序博客网 时间:2024/05/20 00:52
以我这个菜鸟的经验来看,运行时发生findViewById == null错误,一般都是因为没在程序中调用setContentView或者调用的位置不对。今天遇到个特别的,写出来分享一下吧。
用的是android studio,在之前我的工程都只有一个module A,但这次我添加了一个module B,从A中通过StartActivity(intent(B))的方式打开B中的Activity,然后问题就来了:findViewById返回null。
B中的代码我是没改动过的,所以我百思不得其解,为什么会出现这样的问题呢?找啊找,个中曲折我就不废话了,最后发现,原来是因为:A和B中的布局文件有一个重名了--activity_main.xml。具体是,B中的activity_main被映射为A的activity_main,两个布局文件里的内容几乎没有同样的,当然在B中findViewById在大部分情况下都会返回null了。
虽然我很菜,但命名空间的概念也是早已烂熟于心,所以我不认为是因为Android studio的开发人员的疏忽能把两个module中的标志符给搞混了,估计是有其他原因,有大神知道的话请指点一下。
文笔不好,希望能给看官你带来一丢丢帮助吧。
1 0
- findViewById==null? 小心android编译器的命名陷阱
- 小心C++编译器的陷阱
- Android开发:findViewById返回null的解决办法
- Android开发:findViewById返回null的解决办法
- Android开发:findViewById返回null的解决办法
- android findViewById 返回 null
- android初学笔记之<findViewById方法返回Null的原因>
- android inflate之后findViewById返回null的解决方法
- 小心库函数调用的'陷阱'
- [Android-Tips] findviewbyid function returns null
- Android通过findViewById()获取控件为NULL
- Fragment findViewById为null Android(八-1)
- [Android] Fragment findViewById()返回null完全解析
- NULL的陷阱:Merge
- ios 命名的陷阱
- android findViewById(...)的抽取
- android的进阶findViewById
- AndroidGUI27:findViewById返回null的解决办法
- 简易冒泡排序
- (四)、类型转换
- hdu 1754 I Hate it(线段树的单节点更新,求区间最大值)
- Zzuli OJ-----1894简单DP
- HDU 4324 Triangle LOVE (拓扑排序)
- findViewById==null? 小心android编译器的命名陷阱
- angular2 路由导航补遗
- RectF类
- 【Codeforces】-702C-Cellular Network(二分)
- hdu4418 Time travel 【期望+dp】
- php后台跨域解决
- 关于我的幸福爱情总结
- 爬某个音乐网站上的音乐程序
- JS代码优化一:谷歌浏览器的timeline工具的使用