android 颜色填充工具栏,android – 工具栏中的色调导航图标

appcompat导航按钮 – 它只是一个AppCompatImageButton – 可以通过toolbarNavigationButtonStyle属性设置样式. AppCompat主题中的默认样式是Widget.AppCompat.Toolbar.Button.Navigation,我们可以扩展该样式以添加tint属性值.例如:

...

@style/Toolbar.Button.Navigation.Tinted

@color/nav_button_tint

使用此方法时需要注意几点.

在支持库版本25.4.0之前,AppCompatImageButton没有提供自己的tint属性,因此应用程序命名空间中的tint属性将不适用(除非在别处定义,否则将不存在).如果使用支持库版本25.3.0或更早版本,则必须使用平台android:tint属性.

不幸的是,这导致另一个问题,因为Lollipop之前的平台色调(API级别21)只能处理简单的单色值,并且使用ColorStateList(< selector>)资源值将导致抛出异常.如果android:tint值是一个简单的颜色,这不会产生任何问题,但通常需要着色导航图标以匹配另一个主题颜色属性,这可能很好地是一个ColorStateList.在这种情况下,有必要在res / values /和res / values-21 /中创建单独的样式,在res / values /中为android:tint指定一个简单的颜色值.

例如,如果着色以匹配主题的主要文本颜色:

RES /值/ styles.xml

@color/normal_text_color

RES /值-V21 / styles.xml

?android:textColorPrimary

如果您使用的支持库版本低于25.4.0,则只需关注上述注释即可.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值