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

时间:2016-05-17 04:04:39

标签: android navigation-drawer

我陷入了自己的代码中。我无法找到设置"标题"的颜色的位置。在navigationDrawer中的文本,以defualt灰色。

<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" />

app:itemTextColor =&#34;您的颜色&#34; 仅更改每个项目,例如导入,图库等。但如何更改沟通 textColor与在上面?

图片2(深蓝色)是我项目中的样子。我设法在某个地方&#34;在我的项目中将颜色设置为白色。

enter image description here

enter image description here

你能找到我的问题吗?目前我的&#34;标题&#34;文字是白色的..

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

drawer.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>

2 个答案:

答案 0 :(得分:4)

尝试:

<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>

答案 1 :(得分: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是你的自定义布局,你可以提供你想要的任何风格或颜色..希望它能帮到你