NavigationRailView + fragment +

2022-12-12  本文已影响0人  米奇小林
有一种场景,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)
    }
原理待分析,暂且解决了我的问题吧。。。
上一篇下一篇

猜你喜欢

热点阅读