Flow Image我面临一个与在 Android 中保存状态相关的奇怪问题。当我在 Android 中打开“不保留活动”选项时(来自开发人员选项)。然后,如果我从 Fragment A(由 Activity A 启动)启动 Activity B(它启动 Fragment B)。然后我的onSavedInstance
方法在片段 A 中被调用,但在片段 A 的OnCreate
方法中,我收到的捆绑包为空。
和上面的意思有时不一致(特意在安卓清空数据时转载)。
在方法 onSaveInstanceState 中的 Activity A 中,我使用以下 impl 保存了 Fragment A -:
getSupportFragmentManager().putFragment(Bundle,FRAGMENT_TAG,instanceOFFragA);
同样在我的 onCreate 中,我尝试使用以下 impl 检索保存的 Fragment A -:
if (savedInstanceState != null) {
args = savedInstanceState;
Fragment fragment = getSupportFragmentManager().getFragment(savedInstanceState, FRAGMENT_TAG);
if (fragment != null && fragment.getClass().equals(FragA.class)) {
instanceOfFragA = (FragA) getSupportFragmentManager().getFragment(savedInstanceState, FRAGMENT_TAG);
}
}
但是在OnCreate
我得到片段 C 的实例(它基本上是一个注册片段,它具有登录和注册按钮,登录单击将启动 LoginActivity 进而启动 LoginFragment。如果登录成功,它会回调启动片段 A 的活动 A(作为登录是成功))。