Ich verwende eine android.support.v7.widget.Toolbar und habe in diesem Beitrag gelernt, wie man die Farbe des Hamburger-Symbols in Weiß ändert, aber der Aufwärts- / Rückwärtspfeil bleibt eine dunkle Farbe, wenn ich anrufe
setDisplayHomeAsUpEnabled(true);
Wie kann ich den Pfeil auch weiß machen?
So sieht meine Symbolleiste aus, wenn ich setDisplayHomeAsUpEnabled () aufrufe:
... und hier ist der relevante Teil meiner Datei styles.xml:
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
<item name="colorPrimary">@color/primary</item>
<item name="colorPrimaryDark">#194C5F</item>
<item name="colorAccent">@color/accent</item>
<item name="drawerArrowStyle">@style/WhiteDrawerIconStyle</item>
</style>
<style name="WhiteDrawerIconStyle" parent="Widget.AppCompat.DrawerArrowToggle">
<item name="spinBars">true</item>
<item name="color">@android:color/white</item>
</style>
android
icons
toolbar
android-support-library
Joshua W.
quelle
quelle
colorControlNormal
WertAntworten:
Ich habe es gelöst, indem ich styles.xml bearbeitet habe:
... dann in der Aktivität auf den Stil in der Symbolleistendefinition verweisen:
quelle
colorControlNormal
stattdessen einstellenandroid:textColorSecondary
Hier ist was Sie suchen. Dies ändert aber auch die Farbe von radioButton usw. Vielleicht möchten Sie ein Thema dafür verwenden.
quelle
Ich habe es programmgesteuert mit diesem Code gelöst:
Revision 1:
Ab API 23 (Marshmallow) wird die zeichnbare Ressource
abc_ic_ab_back_mtrl_am_alpha
in geändertabc_ic_ab_back_material
.quelle
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
Fragment
? Wenn ja, wo würde ich diesen Code ablegen? DieOnCreateView
Methode, die Wurzel der Klasse oder ...?Diese Antwort ist vielleicht zu spät, aber hier ist, wie ich es mache. Das Stylen der Symbolleiste reicht aus. Erstellen Sie die toolbar.xml mit folgendem Code.
und in der styles.xml
Fügen Sie abschließend die Symbolleiste in das Layout ein
quelle
Ändern Sie Ihr Symbolleisten-Design in ThemeOverlay.AppCompat.Dark
und setzen Sie es in Aktivität
quelle
Zu spät zum Posten, dies funktionierte für mich, um die Farbe des Zurück-Buttons zu ändern
quelle
Nun, es gibt einen einfacheren Weg, dies zu tun
Und dann
quelle
Anstatt Stiländerungen vorzunehmen, fügen Sie diese beiden Codezeilen einfach in Ihre Aktivität ein.
quelle
Hier ist meine Lösung:
Oder wenn Sie eine nette Funktion dafür verwenden möchten:
Verwendung:
quelle
Dieser Code funktioniert für mich:
Wenn Sie die Textfarbe der Symbolleiste ändern möchten:
Arbeiten von API 19 bis 25.
quelle
Verwenden Sie in jeder API-Version die neue abc_ic_ab_back_material, anstatt die ältere zeichnbare ID " abc_ic_ab_back_material " zu verwenden . Ich habe es in 19, 21, 27 getestet und arbeite gut mit dem folgenden Code und der Konfiguration.
compileSdkVersion = 27
}}
quelle
Versuchen Sie Folgendes: Legen Sie das Thema der Symbolleiste in Ihrem Layout wie folgt fest
Wenn Sie weitere Informationen wünschen
Der merkwürdige Fall der Overflow Icon Color von Martin Bonnin
quelle