gpt4 book ai didi

android - 导航组件 - onSupportNavigateUp()

转载 作者:行者123 更新时间:2023-11-29 22:58:12 38 4
gpt4 key购买 nike

真的有必要打电话吗

override fun onSupportNavigateUp() = findNavController(R.id.nav_host_fragment).navigateUp()

在我的 MainActivity 中?

因为当我在我的 xml 中附加 NavHostFragment 时,它从那里开始,但我看过 Google I/O 讲座,他们用它来制作导航的起点

我的问题

什么地方需要用到它?

谢谢

最佳答案

onSupportNavigateUp 来自 AppCompatActivity。您应该在定义 NavHostFragment(可能是您的 MainActivity)的同一 Activity 中覆盖该方法。您覆盖它以便 NavigationUI 可以正确支持向上导航甚至抽屉布局菜单。 AppCompatActivityNavigationUI 是两个独立的组件,因此您重写该方法以连接两者。请注意,如果您使用导航组件设置工具栏,即,如果您执行类似于

override fun onCreate(savedInstanceState: Bundle?) {
setContentView(R.layout.activity_main)

// ...

val navController = findNavController(R.id.nav_host_fragment)
val appBarConfiguration = AppBarConfiguration(navController.graph)
findViewById<Toolbar>(R.id.toolbar).setupWithNavController(navController, appBarConfiguration)
}

您不需要覆盖 onSupportNavigationUp 方法,因为 Navigation 会自动处理点击事件。

如果您想自己处理工具栏,也不需要覆盖它。

关于android - 导航组件 - onSupportNavigateUp(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57187628/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com