如何在工具栏中将导航图标颜色设置为白色?

How to set navigationIcon color white in toolbar?

我在我的应用程序中使用工具栏,当我在工具栏中展开菜单时,navigationIcon 颜色太暗。我想设置navigationIcon color = white,但我不知道该怎么做。请告诉我我能做什么?

xml:

    <androidx.appcompat.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:minHeight="?attr/actionBarSize"
    android:background="@color/dark"
    android:elevation="0dp">

    <ImageButton
        android:id="@+id/imgbtn_back"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/ic_back_dark"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="開單作業"
        android:textSize="22sp"
        android:textColor="@color/white"
        android:layout_gravity="left"
        android:layout_marginLeft="40dp"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="地"
        android:textSize="22sp"
        android:textColor="@color/white"
        android:layout_gravity="right"
        android:layout_marginRight="40dp"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="回"
        android:textSize="22sp"
        android:textColor="@color/white"
        android:layout_gravity="right"
        android:layout_marginRight="20dp"/>
</androidx.appcompat.widget.Toolbar>

java:

    Toolbar toolbar = findViewById(R.id.toolbar);
    toolbar.inflateMenu(R.menu.menu_main);

menu_main:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<group>
    <item
        android:id="@+id/action_about"
        android:title="補印"
        app:showAsAction="never"/>
    <item
        android:id="@+id/action_exit"
        android:title="補拍"
        app:showAsAction="never"/>
</group>

实现此目的的一种方法是在 styles.xml 中添加具有所需颜色的自定义样式

<style name="ToolbarColoredIcons" parent="">
     <item name="android:textColorSecondary">@color/your_color</item>
</style>

然后将此样式应用到您的工具栏

<androidx.appcompat.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:minHeight="?attr/actionBarSize"
    android:background="@color/dark"
    android:elevation="0dp"
    android:theme="@style/ToolbarColoredIcons">

要通过 xml 更改溢出菜单图标的颜色,请在 styles.xml 文件中定义自定义样式并更改 android:tint 属性,如下所示:

<style name="MyToolBarTheme" parent="ThemeOverlay.AppCompat.ActionBar">
    <item name="android:tint">@color/white</item>
</style>

您可以使用 android:theme 属性在工具栏中使用此样式,如下所示:

<androidx.appcompat.widget.Toolbar
    android:theme="@style/MyToolBarTheme"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize">

或者,如果您想以编程方式更改它,您可以像下面那样进行:

if(toolbar.getOverflowIcon()!=null)
  toolbar.getOverflowIcon().setTint(Color.WHITE);