setContentView(R.layout.XXXXX) 没设置到 就开始 initViews() 会导致空指针。
例如下面这样:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getSharedPreferences(Properties.LOGIN_INFO, 0).getString("o2OSetSession", null) != null)
{
uType = this.getSharedPreferences(Properties.LOGIN_INFO, 0).getString(Properties.LoginInfo.USER_TYPE, null);
if (uType != null && uType.equals("Buyer")) {
setContentView(R.layout.correcting_pggmall_mine_buyer);
} else {
setContentView(R.layout.correcting_pggmall_mine_supplier);
}
}
initViews();
initEvents();
initOhter();
loadData();
}
当if(get....)里面的语句块,没被执行到,你后边进行读取,findViewById()会导致读取的对象,是个空指针,然后你再拿null对象去设置某些例如事件监听啊。就会出现空指针。这是安卓开发中比较容易犯的错误。