Tint·着色——xml新属性

https://www.jianshu.com/p/563165534bc2

什么是Tint?

过去我们用图片来给控件着色,设置背景、内容什么的,

而Tint就是给图片着色的。

所以,

注意了:没有图片而空有tint属性是不会生效的,例如没有设置背景图,而设置了背景Tint。

有什么用?

设置不同的theme,或是别的什么用途,需要大量相同唯有颜色不同的图片,

图片大量重复,还增加了apk的大小,

但是有了tint,就可以轻松改变图片的颜色。

都有哪些Tint?

根据控件不同,其xml属性中或多或少会有:

android:tint=""

android:backgroundTint=""

android:foregroundTint=""

android:drawableTint="" (TextView用来着色附加drawable的)

相应的,着色时有多种可选模式,相应的有这些属性:

android:tintMode=""

android:backgroundTintMode=""

android:foregroundTintMode=""

android:drawableTintMode=""

模式共有六种:

add:两层绘制叠加融合

multiply:取两层绘制的交集

screen:上下层都显示(就像是多了块tint色的玻璃)

src_atop:

src_in:取交集,显示上层

src_over:tint色覆盖住图片,都显示



作者:森与渊
链接:https://www.jianshu.com/p/563165534bc2
来源:简书
非商业转载

你可能感兴趣的:(基础知识)