Android(安卓)- NullPointerException
16lz
2021-01-26
Android中的空指针,感觉出现率,比普通的java出现的概率多得多,今天我无意中发现的NullPointerException,还是想记录下来.
我们知道, 我们的控件一般定义在layout.xml中,所以我们使用findViewById方法去寻找控件的时候,虽然不是通过 R.layout.activity,一般默认生成的代码会在Activity中的onCreate方法中:
setContentView(R.layout.activity);
不小心将该行注释了,发现Android报NullPointerException,看看R.java,正常生成,调试的时候,所有控件都是Null,奇怪了,一般的感觉都是觉得应该是通过findViewById获取的控件强制转换获得的控件类型不匹配,于是使用findViewById(R.id.editTextId) instanceof EditText, 当然也报异常,想再调试其他值, 键盘按错,只复制到findViewById(R.id.editTextId),发现也是null,奇怪了.
冷静看一下源码,发现setContentView(R.layout.activity);那行被注释了,想想,果真是这样.
这个问题发现太突然了,便记录下.
更多相关文章
- android中使用自定义控件checkbox,ToggleButton,ProgressBar
- Android(安卓)EditText 密码输入框可见性设置。
- 自定义ViewGroup控件 textView 的ellipsize end 属性无效
- Android(安卓)学习路线
- Android(安卓)编程常见问题解答
- 关于android.os.NetworkOnMainThreadException
- Android实现一个通用的PopupWindow
- Android(安卓)PullToRefresh下拉刷新控件的简单使用
- Android(安卓)获取OnItemClick事件中组件的内容