You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Navigation Drawer项目ActionBar三项设置修改需求

嘿,这三个Navigation Drawer的小调整操作起来很简单,我一步步给你说清楚:

1. 移除ActionBar右上角的设置图标

创建Navigation Drawer项目后,右上角的设置图标对应res/menu/menu_main.xml里的菜单项,直接删掉这个item就行:

  • 打开项目中的 res/menu/menu_main.xml 文件
  • 删除带有android:id="@+id/action_settings"的整个<item>标签,比如删掉这段:
<item
    android:id="@+id/action_settings"
    android:orderInCategory="100"
    android:title="@string/action_settings"
    app:showAsAction="never" />

这样右上角的设置图标就消失了。

2. 将抽屉菜单项标题改为红色

有两种方式可以实现,按需选择:

方式一:单个设置每个菜单项颜色

直接在res/menu/activity_main_drawer.xml的每个<item>标签里添加android:textColor="#FF0000"(红色的十六进制代码):

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    tools:showIn="navigation_view">

    <group android:checkableBehavior="single">
        <item
            android:id="@+id/nav_home"
            android:icon="@drawable/ic_menu_camera"
            android:title="@string/menu_home"
            android:textColor="#FF0000" />
        <item
            android:id="@+id/nav_gallery"
            android:icon="@drawable/ic_menu_gallery"
            android:title="@string/menu_gallery"
            android:textColor="#FF0000" />
    </group>

    <item android:title="@string/menu_communities">
        <menu>
            <item
                android:id="@+id/nav_share"
                android:icon="@drawable/ic_menu_share"
                android:title="@string/menu_share"
                android:textColor="#FF0000" />
            <item
                android:id="@+id/nav_send"
                android:icon="@drawable/ic_menu_send"
                android:title="@string/menu_send"
                android:textColor="#FF0000" />
        </menu>
    </item>
</menu>

方式二:统一设置所有菜单项颜色(更推荐)

如果后续要改颜色只需要改一处,用样式来统一设置:

  1. 打开res/values/styles.xml,添加一个自定义样式:
<style name="DrawerMenuItemText" parent="TextAppearance.AppCompat.Menu">
    <item name="android:textColor">#FF0000</item>
</style>
  1. 找到布局文件里的NavigationView标签(通常在activity_main.xml),添加app:itemTextAppearance="@style/DrawerMenuItemText"属性:
<com.google.android.material.navigation.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true"
    app:headerLayout="@layout/nav_header_main"
    app:menu="@menu/activity_main_drawer"
    app:itemTextAppearance="@style/DrawerMenuItemText" />
3. 移除ActionBar的标题

如果你只想隐藏标题但保留ActionBar,用下面的方法:
在MainActivity的onCreate方法里添加这段代码:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    
    // 隐藏ActionBar标题
    if (getSupportActionBar() != null) {
        getSupportActionBar().setDisplayShowTitleEnabled(false);
    }
    
    // 你原有的其他代码,比如初始化NavigationView等...
}

如果想彻底去掉ActionBar(连标题带栏一起隐藏),可以修改AndroidManifest.xml里的Activity主题:

<activity
    android:name=".MainActivity"
    android:theme="@style/Theme.YourAppName.NoActionBar">
</activity>

注意把YourAppName换成你自己的应用主题名称。


内容的提问来源于stack exchange,提问作者Ganz Alex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:04:46