如何在工具栏中将导航图标颜色设置为白色?
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);
我在我的应用程序中使用工具栏,当我在工具栏中展开菜单时,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);