Android过滤器,更改可绘制颜色

时间:2015-08-04 19:35:41

标签: java android image layout imagefilter

所以,我想对Android中的图像应用滤镜,这个图像全是绿色,但是这种颜色的色调不同,我想把它变成红色。现在我使用这段代码:

Drawable ballon = ContextCompat.getDrawable(context, R.drawable.msg_out);
        ballon.setColorFilter(new
                PorterDuffColorFilter(context.getResources().getColor(R.color.redLightClose), PorterDuff.Mode.MULTIPLY));

view.setBackgroundDrawable(ballon);

但结果我得到两种颜色的褐色混合......我应该使用另一种过滤器吗?如果是这样,你会推荐一个女巫。

1 个答案:

答案 0 :(得分:0)

我使用Tint代替它,它完成了这项工作。

Drawable iconDrawable = ContextCompat.getDrawable(context, R.drawable.msg_out);
            DrawableCompat.setTint(iconDrawable, context.getResources().getColor(R.color.primary));
            setBackgroundViewCompat(text, iconDrawable);