2016-03-24 6 views
0

Toolbar zurück Pfeil ist weiß bei höheren Android-Version 4.0.3 aber Toolbar zurück Pfeil ist schwarz bei Android-Version 4.0.3. Ich möchte in jeder Android-Version einen weißen Backpfeil zeigen.Toolbar zurück Pfeil ist schwarz in Version 4.0.3

in Java

toolbar = (Toolbar) findViewById(R.id.toolbar_title); 
    setSupportActionBar(toolbar); 
    getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

in styles.xml

<style name="AppTheme" parent="MaterialDrawerTheme.Light.DarkToolbar.ActionBar"> 

    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
    <item name="android:textColorPrimary">@android:color/white</item> 
    <item name="drawerArrowStyle">@style/DrawerArrowStyle</item> 
    <item name="android:windowContentOverlay">@null</item> 
    <item name="windowActionBar">false</item> 
    <item name="windowNoTitle">true</item> 
    <item name="colorControlNormal">@android:color/white</item> 
    <item name="actionBarTheme">@style/AppTheme.NoActionBar</item> 

</style> 

styles.xml (v21)

<style name="AppTheme.NoActionBar"> 
    <item name="windowActionBar">false</item> 
    <item name="windowNoTitle">true</item> 
    <item name="android:windowDrawsSystemBarBackgrounds">true</item> 
    <item name="android:statusBarColor">@android:color/transparent</item> 
</style> 

activity.xml

<android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar_title" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:background="@color/colorPrimary" 
     android:minHeight="?android:attr/actionBarSize" 
     android:popupTheme="@android:style/ThemeOverlay.Material.Light"/> 

Antwort

1

gibt es keinen Stil wie "@android:style/ThemeOverlay.Material.Light" auf älteren Geräten (pre-5.0). auch Haupt Elternteil sollte (? an allen se letzter Absatz ohne ActionBar oder vielleicht) "@style/Theme.AppCompat.Light.DarkActionBar" sein

außerdem für Toolbar:

app:popupTheme="@style/AppTheme" 
app:theme="@style/ActionBarTheme" 


<style name="ActionBarTheme" parent="@style/ThemeOverlay.AppCompat.ActionBar"> 
    <item name="android:textColorSecondary">@android:color/white</item> 
    <item name="android:colorControlNormal">@android:color/white</item> 
    <item name="colorControlNormal">@android:color/white</item> 
</style> 

auch: Sie Toolbar in allen OS-Versionen verwenden können, müssen Sie nicht zu schaffen getrennten Stil ohne ActionBar (vorausgesetzt, Sie setzen Toolbar programmatisch) für neuere Betriebssystem-Versionen

+0

in styles.xml, kann nicht lösen ** android: colorControlNormal ** erfordert API level 21, aktuelle min ist 15. –

+0

so haben Sie auch 'colorControlNormal' ohne Präfix, für frühere Versionen – snachmsm

+0

Wie Sie dies tun. : D Bitte erklären Sie mir, vielen Dank. –

1

Sie können die backarrow Farbe als

gesetzt
+0

Fehler: (67, 75) Fehler: kann Symbolvariable nicht finden abc_ic_ab_back_mtrl_am_alpha –

+0

Benennung geändert in 23.2 unterstützen lib-Version zu 'abc_ic_ab_back_material' und das ist am einfachsten, aber nicht so ellegant Weg ... – snachmsm

+0

Kopiere den Zurückpfeil von der Quelle und füge sie in drawable oder mipmap ein, es ist die sichere Lösung –