首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用非片段元素管理后台堆栈顺序

使用非片段元素管理后台堆栈顺序
EN

Stack Overflow用户
提问于 2015-10-19 07:20:02
回答 1查看 37关注 0票数 0

我不知所措。我的应用程序的总体布局是一切都包含在单个活动中。在此活动中,加载了一个主要片段。这个主要片段有一个搜索视图,可以过滤结果。通过单击主片段中的items,另一个辅助片段被加载为对话框。在任何时候,用户都可以点击一个链接,将另一个主片段添加到堆栈上。我的问题是,当用户按back向上移动时,搜索视图将优先于次要片段,并删除用户过滤的数据。

理想情况下,这是我想要的后端堆栈顺序

代码语言:javascript
复制
Activity -> primary Fragment -> searchview filter -> secondary fragments * X -> primary fragment -> repeat

下面是我当前的后端堆栈顺序

代码语言:javascript
复制
Activity -> primary fragment -> secondary fragments * X -> searchview filter -> primary fragment -> repeat

位于活动中的当前onBackPressed()。

代码语言:javascript
复制
@Override
public void onBackPressed(){
   if(getFragmentManager().getBackStackEntryCount() > 0) {
       getFragmentManager().popBackStack();
   } else {
       this.finish();
   }
}
EN

回答 1

Stack Overflow用户

发布于 2015-10-19 21:43:40

如果要保留过滤后的搜索结果,请覆盖onSaveInstanceState()并保存过滤器约束。在onCreateView()覆盖中,检查savedInstanceState是否不为null,如果不为空,则从中获取过滤器约束并重新过滤结果。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33204348

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档