2019년 11월 4일 월요일

Apply gray filter to ImageView in Android

The following code is to apply gray filter to ImageView and reset the filter.

This code requires minSdkVersion of 16.

public class ViewUtils {
    public static void applyGrayFilter(ImageView imageView) {
        ColorMatrix matrix = new ColorMatrix();
        matrix.setSaturation(0);  //0 means grayscale
        ColorMatrixColorFilter cf = new ColorMatrixColorFilter(matrix);
        imageView.setColorFilter(cf);
        imageView.setImageAlpha(128);   // 128 = 0.5
    }

    public static void resetGrayFilter(ImageView imageView) {
        imageView.setColorFilter(null);
        imageView.setImageAlpha(255);
    }
}

댓글 없음:

댓글 쓰기