如上图:是一个透明的灰色图片盖在黑色背景色上面,此时灰色图片看着不明显,我们要做的是把灰色图片颜色变为白色,如下图:
用下面这行代码就能实现:
ivLeft.setColorFilter(Color.WHITE, PorterDuff.Mode.SRC_ATOP);
PorterDuff两个人就是研究当两个图片重叠时,如何让重叠部分产生不同的效果。android中有16种效果。
上面的原理就是:在灰色透明图片上面再罩上一层白色,因为选择PorterDuff.Mode.SRC_ATOP的缘故,所以将他们两个的重叠部分处理成了白色,即达到效果。