gpt4 book ai didi

Android fragment 回按无任何数据丢失

转载 作者:行者123 更新时间:2023-11-29 15:02:58 25 4
gpt4 key购买 nike

当我单击每个导航列表时,我正在创建一个带有抽屉导航的应用程序,新 fragment 将被加载。其中一个 fragment 有 listView。当我单击此列表时加载另一个 fragment 。现在我使用抽屉导航移动到不同的 fragment 。当我每次想要移动到上一个 fragment 而不更改任何数据时按下后退按钮。我该怎么做?

我正在使用以下代码加载 fragment :

FragmentManager fm = getFragmentManager();
for (int i = 0; i < fm.getBackStackEntryCount(); i++) {
fm.popBackStack();
}
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.fragmentHome, fr);
fragmentTransaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
fragmentTransaction.commit();

简而言之:每次按回键我都想加载以前的 fragment 而不重新创建它

最佳答案

我认为这可能有帮助

只需从 Fragmentmanager 执行 PopBackStack

FragmentManager fm = getFragmentManager();
for (int i = 0; i < fm.getBackStackEntryCount(); i++) {
fm.popBackStack();
}

在那个 fragment 中

View mView ; //this will be global

@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
try {
if (mView == null) {
// view will be initialize for the first time .. you can out condition for that if data is not null then do not initialize view again.
mView = inflater.inflate(R.layout.xml,container, false);
}
} catch (Exception e) {
e.printStackTrace();
}

return mView;
}

关于Android fragment 回按无任何数据丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41605669/

25 4 0