我在 OnCreate 函数内的这一行上遇到空指针异常:
int Phase = savedInstanceState.getInt( "Phase", 1 );
根据我阅读的内容,如果键“Phase”没有映射存在,则此函数应返回与“Phase”关联的值或 1。但是由于某种原因,我得到了这个例外,关于为什么会发生这种情况的任何想法?
我在 OnCreate 函数内的这一行上遇到空指针异常:
int Phase = savedInstanceState.getInt( "Phase", 1 );
根据我阅读的内容,如果键“Phase”没有映射存在,则此函数应返回与“Phase”关联的值或 1。但是由于某种原因,我得到了这个例外,关于为什么会发生这种情况的任何想法?
可能是您的 savedInstanceState 对象是null
. 例如,如果您的活动或片段是从布局更改中重新创建的,则它不会为空。
尝试使用:
if(savedInstanceState != null) {
Phase = savedInstanceState.getInt( "Phase", 1 );
} else {
Phase = ...some other meaningful value...
}
我相信你得到的错误不是因为缺少键,而是因为变量 savedInstanceState
为空。你检查过吗?