2

我的(阅读)应用程序由一个(MainActivity)和几个其他片段组成。

我有一个LibraryFragment列出所有保存的文章和一个ReadingFragment(用于阅读文章)

一篇文章可以包含链接,当用户单击链接时,我正在使用片段.replace事务来显示 的新实例ReadingFragment,现在当我单击后退按钮时,我当前的片段被删除并显示旧片段,它使用它再次加载内容的参数(但我失去了滚动位置)

我曾尝试使用.add事务,但由于某种原因,添加的片段覆盖了前一个片段。

我的代码:

  public void showFragment(Fragment fragment, Boolean addToBackStack)
  {
        FragmentManager fragmentManager = getSupportFragmentManager();
        FragmentTransaction transaction = fragmentManager.beginTransaction();
        transaction.replace(R.id.content_frame, fragment);
        if (addToBackStack && get_currentFragment() != null) transaction.addToBackStack(null);
        transaction.commit();
  }

我想保留片段的布局和状态,每次用户单击链接时添加一个新实例,并在用户导航返回时立即恢复片段。(就像我使用 startActivity 时会做的那样)

更新

我正在片段的onActivityCreated(Bundle savedInstanceState)回调中加载内容

4

0 回答 0