我正在使用导航图在Android上导航片段。目前,我可以从一个片段移到另一个片段,然后再按一次返回。
现在,我需要返回到嵌入在托管Fragment的Activity中托管的FloatingActionButton中的OnClickListener中的上一个Fragment,而不是后按。
当前,以下代码将我带到了开始的片段:
NavController navController = NavHostFragment.findNavController(FragmentSelect.this);
navController.setGraph(R.navigation.nav_graph, bundle);
navController.popBackStack();
我也尝试过getActivity().onBackPressed();
,这也使我回到了开始的片段。
如何返回上一个片段?我正在尝试遵循本指南, Pass data to the start destination,用于将分发包返回到起始目的地,但是省略了如何返回到起始目的地。
我还考虑过创建另一个操作以返回到起始目标,但是返回按钮将返回错误的Fragment。有办法阻止这种情况吗?
答案 0 :(得分:1)
如果您要做的只是弹出后退堆栈,则不需要setGraph()
。只需致电popBackStack()
上的NavController
。