これは、setColorFilter、ColorMatrix 、およびColorMatrixColorFilterの実験に使用するものです。
drawable.setColorFilter(item.getColorMatrix());
または:
drawable.setColorFilter(new ColorMatrixColorFilter(getColorMatrix5()));//custom 5
//custom 5
private ColorMatrix getColorMatrix5()
{
ColorMatrix colorMatrix = new ColorMatrix();
colorMatrix.setSaturation(0);//make it greyscale
ColorMatrix blueMatrix = new ColorMatrix(new float[] {
0, 0, 0, 0, 0, // red
0, 0, 0, 0, 0, // green
1, 1, 1, 1, 1, // blue
1, 1, 1, 1, 1 // alpha
});
// Convert, then scale and clamp
colorMatrix.postConcat(blueMatrix);
return colorMatrix;
}//getColorMatrix5
PorterDuff、PorterDuff.Mode
、PorterDuffXfermode
、ColorMatrix、 ColorMatrixColorFilter、 PorterDuffColorFilter、ColorFilter
、を参照してください。Canvas
Color