自定义控件中经常会对外提供设置颜色接口,如对同一个bitmap进行不同颜色的设置;
那么不需要美工切多张图,用代码即可修改bitmap的颜色(不需要麻烦美工mm,另外相对减少了包的大小)
public static Bitmap makeTintBitmap(Bitmap inputBitmap, int tintColor) {
if (inputBitmap == null) {
return null;
}
Bitmap outputBitmap = Bitmap.createBitmap(inputBitmap.getWidth(), inputBitmap.getHeight(), inputBitmap.getConfig());
Canvas canvas = new Canvas(outputBitmap);
Paint paint = new Paint();
paint.setColorFilter(new PorterDuffColorFilter(tintColor, PorterDuff.Mode.SRC_IN));
canvas.drawBitmap(inputBitmap, 0, 0, paint);
return outputBitmap;
}
该代码引用自:BGAQRCode-Android
拜读源码时候看到的,在此表示感谢
仅此记录,希望对看到的朋友有帮助