2016-06-30 4 views
2

Ich habe nach einer Möglichkeit gesucht, eine bestimmte Schriftfarbe in meiner Nav-Schublade zu ändern. Ich kann die Schriftfarben für andere Titel ändern, aber nicht für solche, die ein Menü enthalten.Wie ändere ich Titelfarbe für ein Element, das ein Menü in der Navigationsleiste enthält

Ich kann alle anderen Titelfarben mit app: itemTextColor in der Hauptaktivität ändern. Ich habe versucht, die alternative Schriftfarbe meines Themas zu ändern. Ich bin immer noch relativ neu im Programmieren, also nehme ich an, dass ich etwas vermisse. Das einzige, was mir einfällt, ist, das Aktionslayout zu verwenden und einfach ein benutzerdefiniertes Layout in den Elementen aufzublasen, aber ich würde es vorziehen, nicht alle meine onClicks zu wiederholen. Da mein Designer ein dunkles Menü haben möchte, ist der Text standardmäßig schwarz, unabhängig von den bisherigen Änderungen.

+1

Mögliche Duplikate von [Ändern der Textfarbe des Menüelements in der Navigationsleiste] (http://stackoverflow.com/questions/32042794/changing-text-color-of-menu-item-in-navigation- drawer) –

Antwort

2

Um den Menü-Titel I für Farbe Die Titel Ressource verwendet nur in den Strings HTML-Tags anstelle der einzelnen Elementtitel zu ändern und die Strings xml als Titel bezeichnet. Dies kann getan werden, um auch individuelle Farben für jeden Gegenstand zu machen.

<string name="testTitle"><font color="#303F9F">The title</font></string> 

<group 
android:id="something" 
android:checkableBehavior="single> 
<item 
    android:title="@string/testTitle"> <--This is what I want to change--> 
    <menu> 
     <item android:title="stuff"/> <--This i can change--> 
     <item android:title="stuff"/> 
    </menu> 
</item> 

Ich habe auch bemerkt, dass dies nicht, wenn sekundäre Textfarbe im Set in Ihrem Stile haben nicht funktioniert.

2

Mit der App: itemTextColor kann die Farbe des Menütitels festgelegt werden. Sie können folgenden XML-Code beziehen.

<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:headerLayout="@layout/nav_header" 
    app:itemIconTint="@color/your_menuitem_icon_color" 
    app:itemTextColor="@color/your_menuitem_title_color" 
    app:menu="@menu/menu" /> 
+0

I Habe das gemacht, um die Textfarbe für meine Menüpunkte zu bekommen, aber die Kopfzeile für jedes Menü ist schwarz und ich kann nicht finden, wo ich diesen Teil ändern soll. – Ce1ticFr0st

+0

Legen Sie ein benutzerdefiniertes Thema für Ihre Aktivität fest, und legen Sie in diesem Thema dieses textColorSecondary-Element # FFFFFF