所以,我想对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);
但结果我得到两种颜色的褐色混合......我应该使用另一种过滤器吗?如果是这样,你会推荐一个女巫。
答案 0 :(得分:0)
我使用Tint代替它,它完成了这项工作。
Drawable iconDrawable = ContextCompat.getDrawable(context, R.drawable.msg_out);
DrawableCompat.setTint(iconDrawable, context.getResources().getColor(R.color.primary));
setBackgroundViewCompat(text, iconDrawable);