2016-07-12 32 views
8

Jak mogę zmienić NavigationView punkt menu tekstowego color.My plik menu.xml jest, ja też napisaćzmiana koloru tekstu Przedmiot NavigationView

aplikacja: itemIconTint = "@ kolor/biały" aplikacja: itemTextColor = "@ kolor/biały" w moim układzie, ale to nie będzie działać

<?xml version="1.0" encoding="utf-8"?> 

<item 
    android:checked="false" 
    android:title="@string/popular"> 
    <menu> 
     <item 
      android:id="@+id/tag1" 
      android:checked="false" 
      android:icon="@drawable/bird" 
      android:title="@string/tag1" /> 

     <item 
      android:id="@+id/tag2" 
      android:checked="false" 
      android:icon="@drawable/rabbit" 
      android:title="@string/tag2" /> 

     <item 
      android:id="@+id/tag3" 
      android:checked="false" 
      android:icon="@drawable/bird" 
      android:title="@string/tag3" /> 

     <item 
      android:id="@+id/tag4" 
      android:checked="false" 
      android:icon="@drawable/rabbit" 
      android:title="@string/tag4" /> 


     <item 
      android:id="@+id/tag5" 
      android:checked="false" 
      android:icon="@drawable/bird" 
      android:title="@string/tag5" /> 
     <item 
      android:id="@+id/setting" 
      android:checked="false" 
      android:icon="@drawable/setting" 
      android:title="@string/setting" /> 
     <item 
      android:id="@+id/rate" 
      android:checked="false" 
      android:icon="@drawable/rating" 
      android:title="@string/rate" /> 
    </menu> 
</item> 

Here is my NavigationView in my app as you can see there is no any effects if itemTextColor

mój NavigationView jak ..

<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/theme_primary" 
    app:headerLayout="@layout/layout_drawer_header" 
    app:itemIconTint="@color/white" 
    app:itemTextColor="@color/white" 
    app:menu="@menu/menu_main" /> 
+3

Ale kolor przedmiotu jest biały, którego używasz w xml. to co jest problemem? –

+0

Jak widać na moim obrazie NavigationView, mój popularny tag nadal jest w kolorze czarnym, który jest głównym problemem, chcę popularny tekst w kolorze białym. –

+0

Prawdopodobnie TextView w układzie layout_drawer_header, więc spróbuj go sprawdzić –

Odpowiedz

4

dzięki za odpowiedzi, po prostu poszukać trochę i znalazłem odpowiedź, że nie ma żadnych zmian stylu, po prostu zmieniam plik JAVA jak i gotowe.

NavigationView navigation_view = (NavigationView) findViewById(R.id.navigation_view); 
    navigation_view.setItemTextColor(ColorStateList.valueOf(Color.BLACK)); 
    navigation_view.setItemIconTintList(null); 
1

NavigationView używa koloru Widget.Design.NavigationView tematu. Możesz zastąpić ten temat jak poniżej.

Stwórz swój własny styl, który zasłania Widget.Design.NavigationView w style.xml:

<style name="NavigationStyle" parent="Widget.Design.NavigationView"> 
    <item name="android:textColorPrimary">@color/white</item> 
    <item name="android:textColorSecondary">@color/white</item> 
</style> 

używać tego motywu w układzie pliku XML:

<android.support.design.widget.NavigationView 
     ... 
     android:theme="@style/NavigationStyle" 
     ... /> 
0

Proszę to sprawdzić.

android:id="@+id/nav_view" 
    android:background="@drawable/login_bg" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:layout_gravity="start" 
    app:itemIconTint="#ffffff" 
    app:theme="@style/NavigationDrawerStyle" 
    app:itemTextColor="@color/white" 
    app:headerLayout="@layout/nav_header_main" 
    app:menu="@menu/activity_main_drawer" /> 

również można dodać styl do elementu nawigacji. `

<item name="android:textColorSecondary">#4dffffff</item> 
    <item name="android:dividerHeight">0.5dp</item> 
    <item name="android:listDivider">@color/white_with_alpha</item> 
    <item name="android:textSize">18dp</item> 

</style>` 
Powiązane problemy