要在Android Jetpack导航图中隐藏底部导航栏的片段,您可以使用以下代码示例:
bottom_nav_menu.xml
),并在其中定义导航项。
MainActivity
中,使用setupWithNavController()
方法将底部导航栏与导航控制器关联。class MainActivity : AppCompatActivity() {
private lateinit var binding: ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
val navController = findNavController(R.id.nav_host_fragment)
binding.bottomNavView.setupWithNavController(navController)
}
}
onCreateOptionsMenu()
方法覆盖,并在其中隐藏底部导航栏。class MyFragment : Fragment() {
override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
super.onCreateOptionsMenu(menu, inflater)
activity?.findViewById(R.id.bottomNavView)?.visibility = View.GONE
}
// 其他片段代码
}
这样,当您导航到包含MyFragment
的目的地时,底部导航栏将被隐藏。当您导航到其他目的地时,底部导航栏将重新显示。