首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓: NavigationView TextColor

安卓: NavigationView TextColor
EN

Stack Overflow用户
提问于 2016-02-15 23:42:29
回答 3查看 4K关注 0票数 1

图片比文字更能说明问题:

这应该是正确的外观..但我得到的是:

这是我的代码:

代码语言:javascript
复制
<android.support.design.widget.NavigationView
    android:id="@+id/navigation_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:background="@color/Black"
    app:headerLayout="@layout/nav_header"
    app:itemIconTint="@color/White"
    app:itemTextColor="@color/White"
    app:menu="@menu/drawer" />

我该如何解决这个问题呢?

下面是我的菜单-xml:

代码语言:javascript
复制
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <group>
        <item
            android:id="@+id/drawerFullName"
            android:icon="@drawable/fullnamemale"
            android:title="@string/full_name" />
        <item
            android:id="@+id/drawerAge"
            android:icon="@drawable/age"
            android:title="@string/age" />
        <item
            android:id="@+id/drawerAbout"
            android:icon="@drawable/about"
            android:title="@string/about_user_in_20_letters" />
        <item android:title="@string/personalize">
            <menu>
                <item
                    android:id="@+id/drawerChangeTheme"
                    android:icon="@drawable/changetheme"
                    android:title="@string/change_your_theme" />
            </menu>
        </item>
        <item android:title="@string/user_settings">
            <menu>
                <item
                    android:id="@+id/drawerLogout"
                    android:icon="@drawable/logout"
                    android:title="@string/logout" />
            </menu>
        </item>
    </group>
</menu>

是的,“标题”的颜色没有改变。它仍然是黑色的..

要完成此操作,下面是具有白色背景的导航视图,现在您可以看到标题:

EN

回答 3

Stack Overflow用户

发布于 2017-09-07 02:03:24

我们可以在NavigationView中使用app:itemTextColor & app:itemIconTint来更改导航菜单项的文本和图标颜色。

代码语言:javascript
复制
 <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"
        app:itemTextColor="@color/drawer_menu_text"
        app:itemIconTint="@color/drawer_menu_text"
        app:menu="@menu/menu_navigation_drawer">
票数 6
EN

Stack Overflow用户

发布于 2016-02-16 01:31:06

看起来你的应用程序使用了浅色主题,但你希望你的导航按钮视图是深色的。这意味着您必须覆盖导航视图的主题。

下面的代码将允许您在导航视图中完全自定义文本颜色:

res/color/primary_text.xml

代码语言:javascript
复制
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 38% white for disabled color per material design specs.
    <item
        android:color="#60ffffff"
        android:state_enabled="false"/>
    <!-- 100% white for primary text. -->
    <item android:color="#ffffffff"/>
</selector>

res/color/res_text.xml

代码语言:javascript
复制
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 38% white for disabled color per material design specs. -->
    <item
        android:color="#60ffffff"
        android:state_enabled="false"/>
    <!-- 70% white for secondary text. -->
    <item android:color="#b2ffffff"/>
</selector>

res/values/styles.xml

代码语言:javascript
复制
<style name="ThemeOverlay.MyApp.NavigationView" parent="ThemeOverlay.AppCompat.Dark">
    <!-- This is the menu item text color. -->
    <item name="android:primaryTextColor">@color/primary_text</item>
    <!-- This is the menu header text color. -->
    <item name="android:secondaryTextColor">@color/secondary_text</item>
    <!-- This is the selected color. -->
    <item name="colorPrimary">@color/primary</item>
</style>

res/layout/omething.xml

代码语言:javascript
复制
<android.support.design.widget.NavigationView
    android:id="@+id/navigation_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:background="@color/Black"
    android:theme="@style/ThemeOverlay.MyApp.NavigationView"
    app:headerLayout="@layout/nav_header"
    app:menu="@menu/drawer" />
票数 3
EN

Stack Overflow用户

发布于 2019-09-29 19:05:46

您需要向NavigationView提供样式。

代码语言:javascript
复制
<style name="ApBaseDrawerNavigationMenuStyle" parent="Theme.AppCompat.DayNight.DarkActionBar">
        <item name="colorControlNormal">@null</item>
        <item name="android:color">@color/text_color</item>
        <item name="android:textColor">@color/text_color</item>
        <item name="android:textColorHint">@color/text_color</item>
        <item name="android:textColorPrimary">@color/text_color</item>
        <item name="android:textColorSecondary">@color/gray_shade_555555</item>
        <item name="android:background">#548893</item>
        <item name="android:colorPrimary">@color/text_color</item>
        <item name="android:colorControlHighlight">@color/text_color</item>
    </style>

请在您的样式中设置上述属性。希望这对将来有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35413395

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档