gpt4 book ai didi

android - onSaveInstanceState 没有保存我的值(onCreate input Bundle 始终为 null)

转载 作者:可可西里 更新时间:2023-11-01 19:06:06 28 4
gpt4 key购买 nike

保存包( Activity A):

@Override
protected void onSaveInstanceState(Bundle outState) {
outState.putString("test", "value");
super.onSaveInstanceState(outState);
}

导航到 Activity B;

startActivity(new Intent(getBaseContext(), B.class));

回到 Activity A:

startActivity(new Intent(getBaseContext(), A.class));

尝试加载我写入的值以 bundle 到 Activity A 中:

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

Log.d("MY", "saved instance is null"+ Boolean.toString(savedInstanceState == null));
}

总是返回 savedInstanceState = null。我在这里缺少什么?

当我返回主 Activity 时,onRestoreInstanceState 永远不会被触发

最佳答案

我通过以下方式解决了这个问题:

intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);

从后台重新启动具有已保存状态的旧 Intent 时。如果没有这个标志,我认为当调用 startActivity 时,它会创建一个新的 Activity 实例,而不是从堆栈中获取旧实例。

关于android - onSaveInstanceState 没有保存我的值(onCreate input Bundle 始终为 null),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7320785/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com