【发布时间】:2017-11-19 17:35:35
【问题描述】:
我正在使用 onStop() 保存活动恢复时需要的布尔值。
这是我的代码:
@Override
protected void onStop()
{
super.onStop();
Bundle bundle = new Bundle();
bundle.putBoolean("value",value);
getIntent().putExtras(bundle);
}
@Override
protected void onResume()
{
super.onResume();
if(getIntent().getExtras() != null)
{
Bundle bundle = getIntent().getExtras();
value = bundle.getBoolean("value");
}
}
我的问题是无论布尔值是什么,我的 onResume() 总是将其检索为 FALSE。仅当我使用“返回”按钮离开活动时才会出现此问题。如果我按回家,一切似乎都很好(即如果布尔值为 TRUE,则 onResume() 将其检索为 TRUE。
请帮帮我,因为我不明白为什么 onResume() 总是将布尔值的值设为 FALSE,即使我在 onStop() 中将它保存为 TRUE。
我也尝试了 onRestart()、onPause() 和 onBackPressed(),但我仍然无法获得要保存的正确布尔值。
【问题讨论】:
标签: android android-activity boolean android-lifecycle