我正在使用来自Android Jetpack的新Navigation组件。
根Activity的设置非常简单:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
setSupportActionBar(toolbar)
val navController = findNavController(R.id.navigationFragment)
setupActionBarWithNavController(navController)
bottomNavigationView.setupWithNavController(navController)
}
当Fragment的标题在导航图中定义时,它能够正常工作。但是对于一个Fragment,我想动态设置标题。
我尝试了使用findNavController().currentDestination.label = "Hello world"
,但它没有起作用。
当然,我可以使用一些技巧,比如(activity as? AppCompatActivity)?.supportActionBar?.title = "Hello world"
,但我觉得这会破坏setupActionBarWithNavController()
为我做的魔法。有没有办法动态更新操作栏标题?
2.1.0-alpha02
中无法正常工作。它将直接打印Title:{title}
作为操作栏标题。 - Rohit Maurya{ title }
会导致我的应用程序崩溃,而{title}
则如预期一样工作。这只是一个小问题,以防它让其他人遇到困难。 - Dacre Denny