【发布时间】:2011-07-15 20:25:51
【问题描述】:
我已为我的 Activity 设置清单条目,以便它自己处理方向更改。
在我的onConfigurationChanged() 中,我有这个:
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
findViewById(R.id.header).post(new Runnable() {
@Override
public void run() {
}
});
}
经过几个月没有问题的工作,我刚刚在findViewById() 线上有一个NullPointerException。我的结论是,由于setContentView() 的遗漏,问题中的View 尚未创建。
setContentView() 这里真的有必要吗?如果是这样,为什么它一直正常工作?
【问题讨论】:
-
不,没有必要。您的代码中的其他内容导致
findVieWById返回 null。 -
Felix 可能是对的。查找初始化包含 R.id.header 的任何布局的位置。可能和那个有关
-
@Felix 谢谢,你是对的,一个单独的问题导致该视图丢失。重新发布您的回复作为答案,我会接受。