2016-06-21 14 views
-1

Ich möchte, dass meine Aktionsleiste einen Hintergrund mit Wert @ color/colorPrimary (letzter Punkt) hat, aber in meiner App hat die Aktionsleiste die gleiche Farbe wie mein Hintergrund. Es sieht so aus, als wären sie beide ein Element. Wie kann ich meine Aktionsleiste (Schriftart, Hintergrund, ...) gestalten? Ich muss es nicht dynamisch gestalten, es behält die gleiche Farbe bei allen Aktivitäten.Wie kann ich die Hintergrundfarbe meiner Aktionsleiste (Material Design) ändern?

<resources> 
    <style name="AppTheme" parent="android:Theme.Material"> 
     <item name="android:colorPrimaryDark">@color/colorPrimaryDark</item> 
     <item name="android:colorPrimary">@color/colorPrimary</item> 
     <item name="android:background">@color/background</item> **BACKGROUND** 
     <item name="android:actionBarStyle">@color/colorPrimary</item> **ACTION BAR** 
    </style> 
</resources> 

color.xml

<resources> 
    <color name="colorPrimary">#E91E63</color> 
    <color name="colorPrimaryDark">#880E4F</color> 
    <color name="colorAccent">#E91E63</color> 
    <color name="background">#FCE4EC</color> 
</resources> 

Meine Aktionsleiste gelten nicht die Farbe ich will.

+0

ActionBar die colorPrimary als seine Farbe zu erhalten –

+1

Gehen Sie zu 'color.xml' und ändern Sie die' colorPrimary' oder Änderung in der 'style.xml' – Joshua

+0

I Ich habe beide Vorschläge gemacht, es funktioniert nicht ... – Helenesh

Antwort

0

diesen Code-Snippet Versuchen

<resources> 
     <!-- Base application theme. --> 
     <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
      <!-- Customize your theme here. --> 
<item name="android:statusBarColor">@color/colorPrimaryDark</item> 
      <item name="colorPrimary">@color/color_primary</item> 
      <item name="colorPrimaryDark">@color/color_primary_dark</item> 
      <item name="colorAccent">@color/accent_color</item> 
     </style> 
    </resources> 

Von Java:

requestWindowFeature(Window.FEATURE_ACTION_BAR); 
    getActionBar().setBackgroundDrawable(
      new ColorDrawable(Color.parseColor("#1e8d93"))); 
+0

Nun, ich möchte tatsächlich das Thema Material anwenden, nicht die AppCompat one – Helenesh

+0

@Helenesh, versuchen Sie dies - getActionBar(). setBackgroundDrawable ( neue ColorDrawable (Color.parseColor ("# 1e8d93"))); – Sreekanth

+0

Danke, aber ich kann es immer noch nicht zur Arbeit ... – Helenesh

0

android:background in Ihrer Anwendung Thema verwendet, ist keine gute Idee, da dies die Hintergrundfarbe alle Ansichten gilt einschließlich der Aktionsleiste. Verwenden Sie stattdessen android:windowBackground, um die Fensterhintergrundfarbe der Aktivitäten festzulegen.

0

können Sie einstellen, es ist Farbe wie folgt aus:

ActionBar ab = getSupportActionBar(); 

if(ab != null) { 
    ab.setBackgroundDrawable(new ColorDrawable(Color.RED)); 
} 
+0

Leider funktioniert das nicht – Helenesh