我已将我的 SDK 更新为 API 21,现在后退/后退图标是一个指向左侧的黑色箭头。
我希望它是灰色的。我怎样才能做到这一点?
例如,在 Play 商店中,箭头是白色的。
我这样做是为了设置一些样式。我已经使用 @drawable/abc_ic_ab_back_mtrl_am_alpha
为 homeAsUpIndicator
。该drawable是透明的(只有alpha),但箭头显示为黑色。我想知道我是否可以像在 DrawerArrowStyle
中那样设置颜色。或者,如果唯一的解决方案是创建我的 @drawable/grey_arrow
并将其用于 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>
到目前为止,我的解决方案是采用 @drawable/abc_ic_ab_back_mtrl_am_alpha
,它似乎是白色的,并使用照片编辑器将其绘制成我想要的颜色。它有效,尽管我更喜欢使用 @color/actionbar_text
就像在 DrawerArrowStyle
中一样。
原文由 Ferran Maylinch 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以通过代码来实现它。获取后退箭头drawable,用滤镜修改颜色,设置为后退按钮。
修订版 1:
从 API 23 (Marshmallow) 开始,可绘制资源
abc_ic_ab_back_mtrl_am_alpha
更改为abc_ic_ab_back_material
。编辑:
您可以使用此代码来实现您想要的结果: