5

支持库中提供的用于使用材料设计的新导航视图,int 更改 xml 参数: - android.support.design:itemIconTint - android.support.design:itemTextColor 我在类参考中发现此参数可以更改通过 java 编码,但我想在 xml 文件中做,但它不起作用我不知道我做错了什么。

这是我的导航抽屉和导航视图 XML

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:android.support.design="http://schemas.android.com/tools"
android:fitsSystemWindows="true">

<RelativeLayout
    --- content 
 </RelativeLayout>

<android.support.design.widget.NavigationView
    android:layout_width="280dp"
    android:layout_height="match_parent"
    android:id="@+id/navigationView"
    android:layout_gravity="start"
    android.support.design:itemIconTint="@color/navigation_view_color_set"
    android.support.design:itemTextColor="@color/navigation_view_color_set"
    app:headerLayout="@layout/navigation_view_header"
    app:menu="@menu/menu_data"/>

而我的 ColorStateList 位于 .res 的子目录中,名为 color。

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_focused="true" android:color="@color/primary"/>
    <item android:state_pressed="true" android:state_enabled="false" android:color="@color/primary_dark" />
    <item android:state_enabled="false" android:color="@color/primary_dark" />
    <item android:color="@android:color/white"/>
</selector>

我不知道出了什么问题,也找不到使用此 xml 参数的任何文档。

我要完成什么。

  1. 更改项目和图标的状态颜色
  2. 更改导航背景

http://www.google.com/design/spec/patterns/navigation-drawer.html#navigation-drawer-content

4

2 回答 2

9

你可能不得不尝试这个而不是android.support.design:itemIconTint

app:itemIconTint="@color/navigation_view_color_set"
app:itemTextColor="@color/navigation_view_color_set"
于 2015-07-08T19:33:31.120 回答
0

就我而言,问题是我没有将支持设计库添加到项目中。

于 2018-07-04T11:21:05.983 回答