如何更改底部应用栏中图标的颜色

Posted

技术标签:

【中文标题】如何更改底部应用栏中图标的颜色【英文标题】:How to change color of icons in bottom app bar 【发布时间】:2020-08-11 00:33:32 【问题描述】:

我想更改底部应用栏中图标的颜色。我是第一次使用底部的应用程序栏,所以我没有任何先验知识。 具有底部应用栏的 XML 文件的代码如下

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_
    android:layout_
    tools:context=".NavigActivity">


    <androidx.coordinatorlayout.widget.CoordinatorLayout
        android:layout_
        android:layout_
        android:background="@color/colorAccent">
        <com.google.android.material.bottomappbar.BottomAppBar
            android:id="@+id/bottom_app_bar"
            android:layout_
            android:layout_
            android:layout_gravity="bottom"
            app:backgroundTint="@color/colorAccent"
            app:navigationIcon="@drawable/ic_menu_black_24dp"
            app:menu="@menu/menu"
            app:buttonGravity="center_vertical"
            />
        <com.google.android.material.floatingactionbutton.FloatingActionButton
            android:id="@+id/fab"
            android:layout_
            android:layout_
            android:src="@drawable/ic_add_black_24dp"
            app:layout_anchor="@id/bottom_app_bar"
            android:backgroundTint="@color/colorPrimary"

            app:maxImageSize="35dp"/>

    </androidx.coordinatorlayout.widget.CoordinatorLayout>
    <FrameLayout
        android:layout_
        android:layout_
        android:id="@+id/content_frame"
 />

</RelativeLayout>

这里用到的菜单文件如下

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/home"
        android:title="Home"
        android:icon="@drawable/ic_home_black_24dp"
        app:showAsAction="ifRoom"
        />
    <item
        android:id="@+id/my_invoices"
        android:title="Invoices"
        android:icon="@drawable/ic_receipt_black_24dp"
        app:showAsAction="ifRoom"
        />
    <item
        android:id="@+id/notification"
        android:title="Notification"
        android:icon="@drawable/ic_notifications_black_24dp"
        app:showAsAction="ifRoom"
        />


</menu>

我希望图标的颜色更改为primaryColor,但它没有改变..任何帮助将不胜感激

【问题讨论】:

您活动的 xml 样式中的父级“AppTheme”是什么? 它是` 【参考方案1】:

你可以试试 menu.xml

在链接上找到详细信息。 (图片)

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="[URL]http://schemas.android.com/apk/res/android[/URL]"
    xmlns:app="[URL]http://schemas.android.com/apk/res-auto[/URL]">
    <item
        android:id="@+id/menu_color_change"
        android:title="Color Plate"
        app:showAsAction="ifRoom"
        android:icon="@drawable/ic_color_plate">
    </item>
    <item
        android:id="@+id/menu_other"
        android:title="Other"
        app:showAsAction="never"
        android:iconTint="@android:color/white"
        android:icon="@drawable/ic_color_plate">
    </item>
</menu>

【讨论】:

noobsplanet.com/index.php?threads/… 链接中疯狂的 BBcode 格式是怎么回事?

以上是关于如何更改底部应用栏中图标的颜色的主要内容,如果未能解决你的问题,请参考以下文章

如何在煎茶的底部标签栏中制作更大的图标?

状态栏中图标的颜色 (Flutter)

Android:是不是可以更改 Android Lollipop 状态栏中图标的颜色

如何更改ios7中非活动标签栏图标的颜色?

反转状态栏的图标颜色

如何单击底部栏上的图标