如何为 NavigationView 中的单个菜单项提供自定义图标颜色?
Posted
技术标签:
【中文标题】如何为 NavigationView 中的单个菜单项提供自定义图标颜色?【英文标题】:How to give custom icon color for a single menu item in a NavigationView? 【发布时间】:2016-03-21 00:23:51 【问题描述】:我正在使用安卓导航视图。我想为 NavigationView 中的某些项目提供单独的图标颜色,而不是为所有项目。我希望每个图标都有不同的颜色。我该怎么做?
【问题讨论】:
您需要在主题中添加颜色:***.com/questions/31626488/… 【参考方案1】:你可以试试这个
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_
android:layout_
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_home"
app:menu="@menu/activity_home_drawer" />
还有菜单
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
<item
android:id="@+id/nav_inbox"
android:icon="@null"
android:title="@string/inbox" />
<item
android:id="@+id/nav_start_end"
android:icon="@null"
android:title="@string/start_trip" />
<item
android:id="@+id/nav_map"
android:icon="@null"
android:title="@string/showmapview" />
<item
android:id="@+id/nav_allstudentlist"
android:icon="@null"
android:title="@string/allstudentlist" />
<item
android:id="@+id/nav_settings"
android:icon="@null"
android:title="@string/settings" />
</group>
</menu>
您可以为每个菜单指定图标
【讨论】:
谢谢,我做到了,但是图标颜色相同。如果在 NavigationView 中设置 app:itemIconTint="your color" 属性,问题仍然没有解决。因为图标仍然有相同的颜色颜色。【参考方案2】:如果您指的是 Icon 的 Drawable/Mipmap 资源,这取决于我假设的原始颜色。 如果您通过菜单将图像作为 ActionBar 图标导入 Android Studio,则所有这些都将根据您选择的主题(浅色/深色)采用一种颜色
您的资产(可绘制对象)是否具有不同的颜色?
【讨论】:
我通过“android:icon="@drawable/ic_home"”在 NavigationView 菜单项中使用可绘制资源作为图标。但不管是什么图标,颜色都是一样的。以上是关于如何为 NavigationView 中的单个菜单项提供自定义图标颜色?的主要内容,如果未能解决你的问题,请参考以下文章
更改 navigationView 的单个特定菜单项的背景颜色
如何使用菜单布局将自定义项添加到 NavigationView?