Android代码调整ImageView图标颜色

问题:只有一套图标,图标本身的内容比较简单,但是在不同场景下需要显示不同的颜色,且只改变图标颜色,不改变透明度

解法:通过如下参数构造ColorMatrix,进而构造ColorMatrixColorFilter,然后调用ImageView.setColorFilter()方法调整图标颜色

float[] m  = {
        0, 0, 0, 0, R,
        0, 0, 0, 0, G,
        0, 0, 0, 0, B,
        0, 0, 0, 1, 0,
};

涉及到的类和方法

ImageView.setColorFilter(ColorFilter);

ColorFilter

ColorMatrix

ColorMatrixColorFilter

你可能感兴趣的:(Android代码调整ImageView图标颜色)