如何隐藏默认片段 actionBar 在 android & kotlin 中创建我们自己的 actionBar

How to hide the default fragment actionBar create our own actionBar in android & kotlin

我有一个 android 应用程序,底部导航包含 3 个片段,默认情况下都有自己的 actionBar。我想隐藏三个片段的所有默认 actionBar 并创建我自己的带有许多选项的 actionbar。我正在使用 Kotlin。

您只需要设置应用的风格即可。转到 values/styles.xml,将 AppTheme 的值编辑为 NoActionBar。然后在每个片段中创建自己的 AppBar,只需在 Xml 中使用 AppBarLayout。例如:

 <style name="AppTheme" parent="Theme.MaterialComponents.Light.NoActionBar">
       ...
 </style>

这是一个快速的解决方案。

您找到 styles.xml 并将基本应用程序主题更改为“Theme.AppCompat.NoActionBar”,如下所示。

<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
<!-- Customize your theme here. -->
</style>

并在 xml

中定义操作栏的自定义布局

首先,ActionBar是Activities属性,不是fragments。如果您想要自定义操作栏,请遵循此 link、https://myandroid.site/custom-toolbar-with-style-in-kotlin-design-colorful-toolbar/

您可以在 Activity 中使用默认的 ActionBar 并创建您自己的类似于操作栏的布局。

隐藏Action Bar(下面的代码应该在Activity里面):

if (supportActionBar != null)
    supportActionBar?.hide() 

我已经解决了问题

val appBarConfiguration = AppBarConfiguration(setOf( R.id.navigation_home, R.id.navigation_messages, R.id.navigation_profile)) 
setupActionBarWithNavController(navController, appBarConfiguration)

只需从主activity中删除以上两行,您的问题就解决了。