如何在navigationDrawer中设置项目标题的颜色?

问题描述:

我被困在我自己的代码中。我无法找到将navigationDrawer中的“标题”文本的颜色设置为defualt灰色的位置。如何在navigationDrawer中设置项目标题的颜色?

<android.support.design.widget.NavigationView 
     android:id="@+id/navigation_view" 
     android:background="#000" 
     android:layout_height="match_parent" 
     android:layout_width="match_parent" 
     android:layout_gravity="start" 
     app:headerLayout="@layout/header" 
     app:itemTextColor="your color" 
     app:menu="@menu/drawer" /> 

应用:itemTextColor =“你的颜色”只改变每个项目,如进口,画廊等,但如何与上面的线来改变沟通文字颜色?

图片2(深蓝色)在我的项目中看起来像。我设法在某处将颜色设置为白色。

enter image description here

enter image description here

你能找到我的问题?目前我的 “标题” 文本是白色的..

nav_header_main.xml

<ImageView 
     android:id="@+id/imageView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:paddingTop="@dimen/nav_header_vertical_spacing" 
     android:src="@android:drawable/sym_def_app_icon" 
     /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:paddingTop="@dimen/nav_header_vertical_spacing" 
     android:textColor="@color/whiteGray" 
     android:text="@string/app_name" 
     /> 


</LinearLayout> 

activity_main.xml中

<?xml version="1.0" encoding="utf-8"?> 
    <android.support.v4.widget.DrawerLayout 
     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:id="@+id/drawer_layout" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:fitsSystemWindows="true" 
     tools:openDrawer="start" 
     > 

     <include 
      layout="@layout/app_bar_main" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" /> 

     <android.support.design.widget.NavigationView 
      android:id="@+id/nav_view" 
      android:background="@color/nav_drawer_background" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:layout_gravity="start" 
      android:fitsSystemWindows="true" 
      app:menu="@menu/activity_main_drawer" 
      app:headerLayout="@layout/nav_header_main" 
      app:itemTextColor="@color/nav_drawer_text" /> 

     <android.support.design.widget.NavigationView 
      android:id="@+id/nav_right_view" 
      android:background="@color/nav_drawer_background" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:layout_gravity="end" 
      android:fitsSystemWindows="true" 
      app:menu="@menu/activity_main_right_drawer" 
      app:itemTextColor="@color/nav_drawer_text" /> 


    </android.support.v4.widget.DrawerLayout> 

app_bar_main.xml

<android.support.design.widget.AppBarLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/AppTheme.AppBarOverlay"> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     app:popupTheme="@style/AppTheme.PopupOverlay" 
    /> 

</android.support.design.widget.AppBarLayout> 

<include layout="@layout/content_main" /> 

<android.support.design.widget.FloatingActionButton 
    android:id="@+id/fab" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="bottom|end" 
    android:layout_margin="@dimen/fab_margin" 
    /> 

值/ style.xml

<style name="WelcomeDialogTitle"> 
     <item name="android:gravity">center_horizontal</item> 
    </style> 

    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
     <item name="android:windowBackground">@color/darkblue</item> 
     <item name="colorPrimary">@color/transparent</item> 
     <item name="colorPrimaryDark">@color/darkblue</item> 
     <item name="colorAccent">@color/darkblue</item> 
    </style> 

    <style name="AppTheme.NoActionBar" parent="@style/Theme.AppCompat"> 
     <item name="android:windowBackground">@color/darkblue</item> 
     <item name="windowActionBar">false</item> 
     <item name="windowNoTitle">true</item> 
    </style> 

    <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar"> 
    <item name="colorPrimary">@color/transparent</item> 
    <item name="colorPrimaryDark">@color/transparent</item> 
    <item name="colorAccent">@color/transparent</item> 
    </style> 

    <style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar"> 
    <item name="android:windowActionBarOverlay">true</item> 
    <item name="windowActionBarOverlay">true</item> 
    </style> 

    <style name="CustomTheme" parent="@android:style/Theme.Black"> 
     <item name="android:listViewStyle">@style/CustomListView</item> 
     <item name="android:textViewStyle">@style/CustomTextView</item> 
    </style> 

    <style name="CustomListView" parent="@android:style/Widget.ListView"> 
     <item name="android:textColor">#000000</item> 
     <item name="android:fastScrollEnabled">true</item> 
    </style> 

    <style name="CustomTextView" parent="@android:style/Widget.TextView"> 
     <item name="android:textColor">#000000</item> 
     <item name="android:textSize">17sp</item> 
     <item name="android:padding">1dp</item> 
    </style> 

    <style name="TitleTextStyleLarge"> 
     <item name="android:gravity">left|center</item> 
     <item name="android:shadowColor">@color/white</item> 
     <item name="android:textAppearance">?android:attr/textAppearanceMedium</item> 
     <item name="android:textColor">@color/white</item> 
     <item name="android:textSize">18sp</item> 
    </style> 

    <style name="TitleTextStyle"> 
     <item name="android:gravity">left|center</item> 
     <item name="android:textSize">18sp</item> 
     <item name="android:layout_width">0dp</item> 
     <item name="android:layout_height">fill_parent</item> 
     <item name="android:layout_marginLeft">5dp</item> 
     <item name="android:layout_weight">1</item> 
     <!-- <item name="android:shadowColor">@color/white</item> --> 
     <item name="android:textColor">@color/white</item> 
    </style> 

    <style name="BarTitleStyle"> 
     <item name="android:background">@drawable/bg_list_topbar</item> 
     <item name="android:layout_height">33dp</item> 
     <!-- <item name="android:shadowColor">@color/white</item> --> 
     <item name="android:layout_width">fill_parent</item> 
    </style> 

    <style name="BarTitleProgressStyle"> 
     <item name="android:background">@drawable/bg_list_topbar</item> 
     <item name="android:layout_height">27dp</item> 
     <item name="android:layout_width">27dp</item> 
     <item name="android:layout_marginBottom">1dp</item> 
     <item name="android:layout_marginRight">5dp</item> 
     <item name="android:layout_marginTop">1dp</item> 
     <item name="android:layout_gravity">center</item> 
     <item name="android:gravity">center_vertical|center_horizontal</item> 
    </style> 

</resources> 

我的活动主题

<activity 
      android:name=".MainActivity" 
      android:label="@string/app_name" 
      android:theme="@style/AppTheme.NoActionBar" 
      > 
      <meta-data 

抽屉。XML

<?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_search" 
      android:title="@string/LabelSearchTabTitle" /> 
     <item 
      android:id="@+id/nav_wiki" 
      android:title="@string/LabelTitleWikiBook" /> 
     <item 
      android:id="@+id/nav_forum" 
      android:title="@string/LabelTitleForum" 
      /> 
     <item 
      android:id="@+id/nav_history" 
      android:title="@string/LabelHistory" 
      /> 
     <item 
      android:id="@+id/nav_favs" 
      android:title="@string/LabelFavourites" 
      /> 
    </group> 

    <item android:title="@string/LabelTitleSupportPages"> 
     <menu> 
      <item 
       android:id="@+id/nav_options" 
       android:title="@string/LabelTitleSettings" /> 
      <item 
       android:id="@+id/nav_qa" 
       android:title="@string/LabelTitleAbout" /> 
      <item 
       android:id="@+id/nav_facebook" 
       android:title="@string/LabelTitleFB" /> 
     </menu> 
    </item> 

</menu> 
+0

过去的菜单xml在这里 –

+0

据我所知没有使用任何menu.xml。 – user1293618

+0

我想这会帮助你: [link](http://*.com/questions/30886453/change-the-color-of-a-checked-menu-item-in-a-navigation-drawer) –

尝试:

<item name="android:textColorSecondary">#eeeeee</item> 

编辑:

替换:

<style name="AppTheme.NoActionBar" parent="@style/Theme.AppCompat"> 
     <item name="android:windowBackground">@color/darkblue</item> 
     <item name="windowActionBar">false</item> 
     <item name="windowNoTitle">true</item> 
    </style> 

这一点:

<style name="AppTheme.NoActionBar" parent="@style/Theme.AppCompat"> 
     <item name="android:windowBackground">@color/darkblue</item> 
     <item name="windowActionBar">false</item> 
     <item name="windowNoTitle">true</item> 

     <item name="android:textColorSecondary">#eeeeee</item> 
    </style> 

编辑2:

<style name="AppTheme.NoActionBar" parent="@style/Theme.AppCompat"> 
      <item name="android:windowBackground">@color/darkblue</item> 
      <item name="windowActionBar">false</item> 
      <item name="windowNoTitle">true</item> 

      // change header color  
      <item name="android:textColorSecondary">#eeeeee</item> 
      // change separator color 
      <item name="android:listDivider">#ff000000</item> 
     </style> 
+0

我应该把这个放在哪里? – user1293618

+0

把它放在你的Class的父主题中。对于如 ' #EEEEEE ' –

+0

要不然发表您的活动主题。 –

您可以自定义布局为你的抽屉项目,包括在NavigationView自定义布局。像这样

<android.support.design.widget.NavigationView 
     android:id="@+id/nav_view" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_gravity="start" 
     android:fitsSystemWindows="true"> 


     <include 
      layout="@layout/sidedrawer" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" /> 

    </android.support.design.widget.NavigationView> 

sidedrawer是你的自定义布局,你可以提供任何你想要的风格或颜色..希望它会帮助你