Zaktualizowałem mój SDK do API 21, a teraz ikona cofania / w górę jest czarną strzałką skierowaną w lewo.
Chciałbym, żeby był szary. Jak mogę to zrobić?
Na przykład w Sklepie Play strzałka jest biała.
Zrobiłem to, aby ustawić niektóre style. Użyłem @drawable/abc_ic_ab_back_mtrl_am_alpha
dla homeAsUpIndicator
. Ta rysunkowa jest przezroczysta (tylko alfa), ale strzałka jest wyświetlana na czarno. Zastanawiam się, czy mogę ustawić kolor tak, jak robię to w DrawerArrowStyle
. Lub jeśli jedynym rozwiązaniem jest utworzenie mojego @drawable/grey_arrow
i użycie go homeAsUpIndicator
.
<!-- Base application theme -->
<style name="AppTheme" parent="Theme.AppCompat.Light">
<item name="android:actionBarStyle" tools:ignore="NewApi">@style/MyActionBar</item>
<item name="actionBarStyle">@style/MyActionBar</item>
<item name="drawerArrowStyle">@style/DrawerArrowStyle</item>
<item name="homeAsUpIndicator">@drawable/abc_ic_ab_back_mtrl_am_alpha</item>
<item name="android:homeAsUpIndicator" tools:ignore="NewApi">@drawable/abc_ic_ab_back_mtrl_am_alpha</item>
</style>
<!-- ActionBar style -->
<style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid">
<item name="android:background">@color/actionbar_background</item>
<!-- Support library compatibility -->
<item name="background">@color/actionbar_background</item>
</style>
<!-- Style for the navigation drawer icon -->
<style name="DrawerArrowStyle" parent="Widget.AppCompat.DrawerArrowToggle">
<item name="spinBars">true</item>
<item name="color">@color/actionbar_text</item>
</style>
Moje dotychczasowe rozwiązanie polegało na pobraniu @drawable/abc_ic_ab_back_mtrl_am_alpha
, który wydaje się być biały, i pomalowaniu go na żądany kolor za pomocą edytora zdjęć. Działa, chociaż wolałbym używać @color/actionbar_text
jak w DrawerArrowStyle
.
homeAsUpIndicator
/,@drawable/abc_ic_ab_back_mtrl_am_alpha
aby biała strzałka wsteczna była biała. Wolę to niż włamanie się do Javy.