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);那行被注释了,想想,果真是这样.

  这个问题发现太突然了,便记录下.

更多相关文章

  1. android中使用自定义控件checkbox,ToggleButton,ProgressBar
  2. Android(安卓)EditText 密码输入框可见性设置。
  3. 自定义ViewGroup控件 textView 的ellipsize end 属性无效
  4. Android(安卓)学习路线
  5. Android(安卓)编程常见问题解答
  6. 关于android.os.NetworkOnMainThreadException
  7. Android实现一个通用的PopupWindow
  8. Android(安卓)PullToRefresh下拉刷新控件的简单使用
  9. Android(安卓)获取OnItemClick事件中组件的内容

随机推荐

  1. android SQLite查询
  2. Android(安卓)封装实现各种样式对话框
  3. Android屏蔽Home键
  4. [转载]Android(安卓)by example : MVVM +
  5. Android外部存储/内部存储路径获取大全
  6. Android(安卓)xml文件里读取string array
  7. 使用Android内置httpRequest发起httpRequ
  8. android CVE 漏洞汇总
  9. Android(安卓)Widget桌面组件创建
  10. SharedPreferences 数据存储