代码之家  ›  专栏  ›  技术社区  ›  Mohad Hadi

导航组件,添加或替换片段或其他东西,如隐藏显示片段

  •  0
  • Mohad Hadi  · 技术社区  · 6 年前

    如何在导航组件中指定替换或添加片段?

    NavHostFragment.findNavController(this).navigate(R.id.action_splashFragment_to_categoriesFragment)
    
    0 回复  |  直到 6 年前
        1
  •  1
  •   Ramakrishna Joshi    4 年前

    Jetpack导航组件目前支持替换碎片。

    不支持添加片段

    https://gist.github.com/utkukutlu/bd2e37253e7184179d923321e3ea72c1

        2
  •  -1
  •   Reza    4 年前

    如果你只是使用 findNavController().navigate(R.id.someDestinationId) fragmentManager.add 但是,如果您想要替换行为,并且不希望用户能够按back键并重新加载上一个活动,则应执行以下操作:

    findNavController().navigate(R.id.homeFragment, null, NavOptions.Builder()
                    .setPopUpTo(R.id.loginFragment, true)
                    .build())
    

    在这种情况下,我在里面 家庭片段 登录碎片 再一次

    推荐文章