图片说的不仅仅是文字:
这是我的代码:
<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" />
我该如何解决这个问题?
这是我的menu-xml:
<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>
是的,“标题”颜色没有变化。它仍然是黑色..
答案 0 :(得分:1)
您的应用看起来像是使用了浅色主题,但您希望导航视图显得很暗。这意味着您必须覆盖导航视图的主题。
下面的代码将允许您在导航视图中完全自定义文本颜色:
<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>
<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>
<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>
<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" />
答案 1 :(得分:0)
我们可以使用 app:itemTextColor &amp; NavigationView 中的 app:itemIconTint 可更改导航菜单项的文字和图标颜色。
<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">
答案 2 :(得分:0)
您需要为NavigationView提供样式。
<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>
请以您的样式设置以上属性。 希望对将来有帮助。