我无所适从。我的应用程序的总体布局是一切都包含在一个活动中。在此活动中,将加载主要片段。该主要片段具有可以过滤结果的搜索视图。通过单击主片段中的项目,将另一个辅助片段作为对话框加载。在任何时候,用户都可以单击链接,将另一个主要片段添加到堆栈中。我的问题是,当用户向后按下以向后移动时,搜索视图将优先于辅助片段并删除用户过滤的数据。
理想情况下,我的背包订单需要
Activity -> primary Fragment -> searchview filter -> secondary fragments * X -> primary fragment -> repeat
这是我当前的后台订单
Activity -> primary fragment -> secondary fragments * X -> searchview filter -> primary fragment -> repeat
当前onBackPressed()位于活动中。
@Override
public void onBackPressed(){
if(getFragmentManager().getBackStackEntryCount() > 0) {
getFragmentManager().popBackStack();
} else {
this.finish();
}
}
答案 0 :(得分:0)
如果要保留已过滤的搜索结果,请覆盖onSaveInstanceState()
并保存过滤器约束。在onCreateView()
覆盖中,检查savedInstanceState
是否为空,如果是,则从中获取过滤器约束并重新过滤结果。