提问者:小点点

将所有碎片隐藏在背包中,但仍然可以返回


我的活动中有一个小布局,我根据用户在应用程序中的导航添加碎片。

假设用户这样导航:

活动-

我希望能够隐藏碎片并再次显示空白活动。

这就是我如何将片段添加到活动中:

protected void addFragment(Fragment fragment)
    {
        getSupportFragmentManager().beginTransaction().replace(R.id.secondary_fragment, fragment).addToBackStack(fragment.getTitle()).commit();
    }

为了清除所有的片段,我使用:

< code>getSupportFragmentManager()。popBackStack(null,FragmentManager。POP _ BACK _ STACK _ INCLUSIVE);

但是,有没有办法清除片段,如果用户按回去,他们将能够回到片段 C(而不是退出应用程序)?


共2个答案

匿名用户

也许您不是弹出所有 backStack,而是通过 id 获取片段视图并将可见性设置为不可见?

匿名用户

尝试在按钮按下时使用清除堆栈启动您的Activity的新实例(如果我假设这是在您描述的C之后是正确的)。这样,第一个活动实例仍然有最多的片段C,第二个活动实例将是您喜欢的任何内容(片段A

高温热水器