Android 如何在导航控制器中更改目的地的标签属性?

Android 如何在导航控制器中更改目的地的标签属性?,android,android-jetpack,android-architecture-components,Android,Android Jetpack,Android Architecture Components,我正在尝试在Android中使用导航控制器 如上图所示,我将目的地的标签属性设置为“Home” 这个标签,会像标题一样显示在我的工具栏上。 我可以按程序更改标签吗?因为我想动态设置工具栏标题 我尝试使用toolbar.title=“此处的某些标题”更改工具栏标题,但它总是与该标签的标题重叠 那么如何解决这个问题呢?在你的活动中,像下面这样做对我来说很有效: setSupportActionBar(toolbar) val navController = findNavControll

我正在尝试在Android中使用导航控制器

如上图所示,我将目的地的
标签
属性设置为“Home”

这个标签,会像标题一样显示在我的工具栏上。 我可以按程序更改标签吗?因为我想动态设置工具栏标题

我尝试使用
toolbar.title=“此处的某些标题”
更改工具栏标题,但它总是与该标签的标题重叠


那么如何解决这个问题呢?

在你的活动中,像下面这样做对我来说很有效:

 setSupportActionBar(toolbar)
    val navController = findNavController(R.id.nav_controller_fragment)
    val appBarConfiguration = AppBarConfiguration(navController.graph)
    setupActionBarWithNavController(navController, appBarConfiguration)


    navController.addOnDestinationChangedListener { controller, destination, arguments ->
        when (destination.id) {
            R.id.mainFragment -> toolbar.title = "ok"
            else -> {
                toolbar.title = "General"
            }
        }
    }
或者,如果您想从片段中进行更改,请执行以下操作:

 override fun onStart() {
    super.onStart()
    (activity as MainActivity).toolbar.title = "changed"
}

只需删除
nav_graph.xml中该片段的标签,然后在片段/活动中为工具栏设置标题。

但是字符串应该来自我的目标(片段)。那我该怎么办?我想动态更改它hi@Alexa289,有消息吗?我也有同样的问题。。。