Android - 弹出两个或更多片段但不顶部

Posted

技术标签:

【中文标题】Android - 弹出两个或更多片段但不顶部【英文标题】:Android - Pop two or more fragments but don't the top 【发布时间】:2016-10-24 08:12:41 【问题描述】:

我有以下场景:

A(Bottom) -> B -> C -> D(Top) -back-> A
A(Bottom) -> B -> C -back-> B -back-> A

一旦我在顶部(D 片段),我想弹出 B 和 C 片段。这样,当我从 D 向后按时,我可以到 A。

当我从 D 回来时,我想避免 B 和 C 上的转换。 A(底部) -> B -> C -> D(顶部) -back-> C -back-> B -back-> A

还有可能吗?

【问题讨论】:

如果用户在 C 处按“返回”,您是否要从 C 返回到 B? 【参考方案1】:

如果我正确理解您的情况,那么在创建片段 D 之前,您可以尝试getFragmentManager().popBackStack(),它将查看您的片段堆栈并简单地弹出最后一个片段。为此,您需要确保 B 和 C 在后台堆栈中,因此在创建这些片段时,您需要调用 addToBackStack(null)。现在,在创建片段 D 时,您只需 popBackStack() 两次,这将使您回到 A。我希望我正确理解您的情况。

【讨论】:

但问题是我不想看到过渡 D->C->B->A,我想看到 D->A

以上是关于Android - 弹出两个或更多片段但不顶部的主要内容,如果未能解决你的问题,请参考以下文章

android 仿微信demo————微信顶部操作栏加号按钮实现(弹出子菜单)

android 仿微信demo————微信顶部操作栏加号按钮实现(弹出子菜单)

未创建 Android listview 内容视图

Android:将片段和弹出窗口的点击事件中生成的变量传递给活动的方法

Android之Fragment的优点和作用

没有滚动内容时如何下拉协调器布局