我正在使用一个导航图来导航Android上的片段。目前,我可以从一个片段到另一个片段,并返回后按。
现在我需要返回到OnClickListener中的前一个片段,OnClickListener嵌入到一个FloatingActionButton中,该FloatingActionButton托管在一个activity中,该activity托管该片段,而不是一个back press。
目前,下面的代码将使我一直了解到开头的片段:
NavController navController = NavHostFragment.findNavController(FragmentSelect.this);
navController.setGraph(R.navigation.nav_graph, bundle);
navController.popBackStack();
我还尝试了getActivity().onBackpressed();
,它也将我带回到开头的片段。
如何回到上一个片段?我正在尝试遵循这个指南,将数据传递到起始目标,用于将包返回到起始目标,但是它遗漏了如何返回到起始目标。
我还想过创建另一个动作来返回开始目的地,但随后back按钮将返回到错误的片段。有什么办法可以阻止吗?
如果您想做的只是弹出后堆栈,那么setgraph()
是不必要的。只需在NavController
上调用PopBackStack()
即可。