假设我在底部导航 View 中有 4 个标签。如果用户选择其中一个选项卡,那么用户将从一个 fragment 导航到其他 fragment 。
假设用户选择第一个选项卡(主页),然后从以下位置导航:
fragmentA(home)->fragmentB->fragmentC->fragmentD->fragmentE
我想在 Android 中使用导航 Controller 组件以编程方式从 fragmentE 返回到 fragmentA。该怎么做?
我尝试过使用这段代码,但它只是回到了fragmentD(表单fragmentE)
btn.setOnClickListener{
Navigation.findNavController(view).navigateUp()
}
最佳答案
NavController
的 popBackStack(int, boolean)
弹回一个特定的目的地ID:
Attempts to pop the controller's back stack back to a specific destination.
因此你可以使用
Navigation.findNavController(view).popBackStack(R.id.fragmentA, false)
弹回fragmentA而不弹出fragmentA本身(这就是inclusive
标志为false
的原因。
关于android - 如何在 Android 中使用导航 Controller 组件返回根 fragment 或层次结构的顶部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55779712/