gpt4 book ai didi

java - 旋转期间无法保存 fragment 状态

转载 作者:行者123 更新时间:2023-12-02 12:24:16 25 4
gpt4 key购买 nike

我有几个 Activity fragment ,由底部栏更改。我尝试使用 Once for all, how to correctly save instance state of Fragments in back stack? 来实现 fragment 状态处理问题是

    mContent = getSupportFragmentManager().getFragment(savedInstanceState, TAG);

返回下一个错误:

java.lang.NullPointerException: Attempt to invoke virtual method 'int java.util.ArrayList.size()' on a null object reference

调试时我有下一个savedInstanceSet:

ArrayMap@5665, size = 4
value[0]=Bundle
value[1]="FragmentName"
value[2]=FragmentManagerState
value[3]={Integer}"0"

请不要粘贴类似的解决方案

 setRetainInstance(true),
android:configChanges="orientation|screenSize"

等等,因为我需要重新创建 fragment (陆地和肖像的不同xml文件)。

最佳答案

使用下面的代码;

将此行添加到菜单中

android:configChanges="orientation|screenSize"

并将此函数添加到您的 Activity 文件中,

 @Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
onCreate(savedInstanceState);
}

关于java - 旋转期间无法保存 fragment 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45566693/

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