2017-04-07 6 views
2

Ich versuche, die Textfarbe der Toolbar in der Menüzeile hier zu ändern, aber es funktioniert nicht. Hier ist mein Stil:Android Toolbar Menü Textfarbe

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 

    <item name="toolbarStyle">@style/AppTheme.ToolbarStyle</item> 
    <item name="buttonStyle">@style/AppTheme.ButtonStyle</item> 
    <item name="colorControlHighlight">@color/colorPrimary</item> 
</style> 
<style name="AppTheme.ToolbarStyle" parent="Base.Theme.AppCompat.Light.DarkActionBar"> 
    <item name="android:background">@color/colorPrimary</item> 
    <item name="titleTextColor">@android:color/white</item> 
    <item name="titleTextAppearance">@style/TextAppearance.AppCompat.Widget.ActionBar.Title 
    </item> 
    <item name="actionMenuTextColor">@android:color/white</item> 
</style> 

Layout xml:

<android.support.v7.widget.Toolbar 
    android:id="@+id/toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="?attr/actionBarSize" 
    app:title="@string/app_name" 
    app:titleMarginStart="@dimen/margin_l" 
    /> 

Ich habe versucht, das Toolbar Thema direkt in XML zu setzen, aber der Menüpunkt ist nach wie vor zurück. Gibt es dafür eine Lösung?

enter image description here

+0

diese hinzufügen und lassen Sie mich wissen @ android: Farbe/weiß. –

Antwort

3

diese Zeilen in Ihrem AppTheme Stil hinzufügen

<item name="actionMenuTextColor">@color/white</item> 
<item name="android:actionMenuTextColor">@color/white</item> 
+0

Ich habe keine Ahnung warum, aber es hat funktioniert. Vielen Dank. –

+0

froh, das zu wissen. –

+1

'android: actionMenuTextColor' ist für höhere API-Ebenen und' actionMenuTextColor' wird verwendet, wenn Sie die Support-Bibliothek verwenden. –

-1

In Ihrem Theme-Datei müssen Sie diese setzen:

<style name="AppTheme.ActionBar" parent="Theme.AppCompat.Light.DarkActionBar"> 
     ... 
    <item name="actionMenuTextColor">@color/text_color</item> 
     ... 
</style> 

und oben Thema gelten Ansicht wie wie diese Symbolleiste android:theme="@style/AppTheme.ActionBar"

ausführliches Beispiel:

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/main_toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="?attr/actionBarSize" 
    android:background="?attr/colorPrimary" 
    android:layout_gravity="top" 
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
    android:theme="@style/AppTheme.ActionBar"/> 
+0

Dies ist nicht die richtige Antwort. Ich habe es schon ausprobiert. Sie müssen die Fragen sorgfältig lesen. –

+0

@ ЄвгенГарастович ok, aber du hast kein API-Level angegeben, auf das du abzielst. Ich habe dieses ' hinzugefügt @ color/text_color', Für höhere Version ' @ color/weiß' –

+0

Es spielt keine Rolle. Keine dieser Zeilen funktioniert für das Toolbar-Design. Ich musste diese Zeilen direkt zu AppTheme hinzufügen, dann funktionierte alles. Bitte überprüfen Sie die akzeptierte Antwort. –

-1

Thema für Symbolleiste erstellen

<style name="AppTheme.ActionBar" parent="Theme.AppCompat.Light.DarkActionBar"> 
     ... 
    <item name="actionMenuTextColor">@color/your_color_code</item> 
     ... 
</style> 

und dieses Thema auf Ihr Toolbar Ansicht wie folgt anwenden:

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="?attr/actionBarSize" 
    android:layout_gravity="top" 
    android:theme="@style/AppTheme.ActionBar"/> 
+0

Sie sind nicht aufmerksam. Ich habe das schon ausprobiert und es hat nicht funktioniert. –

+1

@ ЄвгенГарастович Nur die Schaffung Stil nicht ausreichend ist, dass Sie dieses Thema zu Symbolleiste befestigen, ich in Ihrem Code sehen Sie ein Thema nicht angewendet haben. –

+0

Ich dachte, dass ich versucht habe, das Thema direkt in meiner Layoutdatei anzuwenden, aber es hat nicht funktioniert. Bitte beachten Sie die Frage. –

Verwandte Themen