如何在导航栏中隐藏默认徽标 space?

How do I hide the default logo space in Navigation Bar?

目前我的导航抽屉在 'Settings and Privacy' 项之前显示默认的 space。我想删除这个 space 并使文本左对齐。

我该怎么做?

这是我的 XML 代码:

<group android:checkableBehavior="single">
    <item
        android:id="@+id/menu_bookmarks"
        android:icon="@drawable/ic_baseline_bookmarks_24"
        android:title="Bookmarks"
        />

    <item
        android:id="@+id/menu_topics"
        android:icon="@drawable/ic_baseline_topic_24"
        android:title="Topics"
        />

    <item
        android:id="@+id/menu_lists"
        android:icon="@drawable/ic_baseline_featured_play_list_24"
        android:title="Lists"
        />
</group>

    <group android:checkableBehavior="single">
        <item
            android:id="@+id/menu_settings"
            android:title="Settings and privacy"
            android:icon="@null"
            />

        <item
            android:id="@+id/menu_help"
            android:title="Help Centre"
            android:icon="@null"
            />
    </group>

您可以为可绘制图标使用 @null 值。

<item
    android:id="@+id/settings_and_privacy"
    android:icon="@null"
    android:title="@string/settings_and_privacy" />

像这样在您的菜单中创建 2 组项目并将它们分为图标和非图标

<group
android:id="@+id/menu_top"
<item>
</item>
<item>
</item>
</group>
<group
android:id="@+id/menu_bottom"
<item>
android:icon="@null"
</item>
<item>
android:icon="@null"
</item>
</group>

这应该会自动删除 space,因为您有两组项目

如果这不起作用,请使用

int positionOfMenuItem =3; //the position of item you need to the left

MenuItem item = menu.getItem(positionOfMenuItem);

SpannableString s = new SpannableString(settingsItemTitle);

s.setSpan(new AlignmentSpan.Standard(Alignment.ALIGN_LEFT), 0, s.length(), 0);

item.setTitle(s);

尝试将@null 与此组合一起使用,希望这对您有所帮助并解决您的问题。

<?xml version="1.0" encoding="utf-8"?>
<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:title="Primary">

            <menu>
                <item
                    android:id="@+id/nav_home"
                    android:icon="@drawable/ic_menu_camera"
                    android:title="@string/menu_home" />
                <item
                    android:id="@+id/nav_gallery"
                    android:icon="@drawable/ic_menu_gallery"
                    android:title="@string/menu_gallery" />
                <item
                    android:id="@+id/nav_slideshow"
                    android:icon="@drawable/ic_menu_slideshow"
                    android:title="@string/menu_slideshow" />
            </menu>

        </item>

        <item android:title="Secondary">
            <menu android:title="Second Category">
                <group
                    android:id="@+id/menu_bottom"
                    android:checkableBehavior="single">
                    <item
                        android:id="@+id/nav_settings"
                        android:icon="@null"
                        android:title="Settings and Privacy" />
                </group>

            </menu>

        </item>
    </group>

</menu>