setSupportActionBar删除菜单项

问题描述

很抱歉,如果我没有足够清楚地解释这个问题。

我有一个利用MaterialToolbar的项目,它引用了menu.xml的外观。菜单中包含我希望使用的潜在图标(收藏夹,删除等)。

在我的代码中,但是在初始化setSupportActionBar()时,它会覆盖我设置的引用,该图标不再显示在“导航”图标之外。

我的项目需要setSupportActionBar(),有什么办法可以保持setSupportActionBar()的外观同时保留top_app_bar.xml?或至少是在菜单项中初始化过的图标?

activity_main_menu.xml

<com.google.android.material.appbar.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <com.google.android.material.appbar.MaterialToolbar
        android:id="@+id/topAppBar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        app:menu="@menu/top_app_bar"
        app:navigationIcon="@drawable/ic_menu_24dp"
        style="@style/Widget.MaterialComponents.Toolbar.Primary"/>
</com.google.android.material.appbar.AppBarLayout>

top_app_bar.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/delete"
        android:icon="@drawable/ic_delete_24dp"
        android:title="test"
        app:showAsAction="ifRoom"
        />
</menu>

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/delete"
        android:icon="@drawable/ic_delete_24dp"
        android:title="test"
        app:showAsAction="ifRoom"
        />
</menu>

MainMenu.java

MaterialToolbar topAppBar = findViewById(R.id.topAppBar);
setSupportActionBar(topAppBar);
getSupportActionBar().setDisplayShowTitleEnabled(false);

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)