有一种场景,NavigationRailView + fragment + Navigation ,通过 findNavController().navigate() 跳转至DetailFragment,点击NavigationRailView 其他标签,再点回上一次的标签,此时标签未被选中,显示的页面为之前操作跳转的DetailFragment。必须在DetailFragment 中 调用 findNavController().popBackStack() 返回,标签才会被选中。如何在NavigationRailView 标签点击时,每次都显示当前标签下的首页fragment???
2022-12-15 更新
通过反复试验 可以使用 findNavController().clearBackStack() 在切换新的fragment 里 将之前的fragment 清除
override fun onAttach(context: Context) {
super.onAttach(context)
findNavController().clearBackStack(R.id.VideoFragment)
}
网友评论