android - 喷气背包导航 : Hide label in toolbar

标签 android android-toolbar android-jetpack android-architecture-navigation

新的 Jetpack Navigation 使用 label来自 navigation.xml 的属性文件以根据显示的目标 fragment 自动更新工具栏的标题。

我不希望在我的目标 fragment 之一中显示任何标题,因此我可以放置 SearchView而是在这个地方。

我已经尝试过android:label="@null"但工具栏的标题只是回退到应用程序的标题。调用menu.clear()onCreateOptionsMenu()回调也没有效果。

如何仅在特定目标 fragment 中完全从工具栏菜单中删除标题?

最佳答案

作为替代方案,updating UI components with NavigationUI 的 android 指南表明您可以使用 addOnDestinationChangedListener像这样:

navController.addOnDestinationChangedListener { _, _, _ ->
    toolbar.title = ""
}

此解决方案不需要清除每个单独 fragment 中的标题。

关于android - 喷气背包导航 : Hide label in toolbar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57535239/

相关文章:

android - 在 Android 上使用 HTTPClient 进行多个 HTTP 连接的最佳方式

android - Proguard 和 com.google.android.gms.common.api.internal.BasePendingResult$ReleasableResultGuardian

android - 使用 loadLabel(android.content.pm.PackageManager) 为 Android Widget 设置标签的示例

java - 在Android中检测长按

android - CollapsingToolbarLayout 标题作为共享元素过渡

java - 如何将多个菜单部分添加到工具栏?

android - 如何检查向上按钮是否启用?

android - 修改重量在 jetpack compose 1.1.1 中不可用

Android Navigation 从第一个 fragment 中删除工具栏

android - 引用生成类的适配器 (android-sunflower)