0

我有一个带有 Android Studio 中默认布局的工具栏的活动,我可以通过以下方法轻松更改工具栏中的标题:

    Bundle bundle = new Bundle();
    bundle.putString("toolbarTitle", "A new title");

    NavHostFragment
        .findNavController(this)
        .navigate(R.id.action_navigation_conversation_to_placeholder, bundle);

toolbarTitle在导航菜单布局中已经实现了安全参数。

但是,现在我正在尝试从通过上述方法打开的片段更改标题,例如;

  • 我的活动->打开->我的片段

  • MyFragment 更改标题

我确实知道如何在不使用导航 UI 组件的情况下更新它,但如果可能的话,我想使用它们。

其他类似的问题仅与我上面已经提供的示例有关,即打开新片段时或建议使用不使用导航 UI 组件的典型方法,均未涵盖此特定场景。

4

2 回答 2

1

您可以通过访问活动中的 supportActionBar 来更改标题:

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
    super.onViewCreated(view, savedInstanceState)
    (requireActivity() as AppCompatActivity).supportActionBar?.title = "Your Title"
}
于 2021-03-12T16:17:45.343 回答
0

似乎这是不可能的,唯一的方法是直接通过不使用导航架构组件来实现这一点。

于 2020-08-26T17:37:23.437 回答