使用glide库的图像灰度

Image grayscale using glide library

我正在使用 glide 库在图像视图中加载图像 url。

Glide.with(context)
                .load(imageurl)
                .apply(RequestOptions.circleCropTransform())
                .into(holder.thumbnail);

实际上,圆角图像加载得很好。

我需要加载圆角图像 + 灰度 图像

这可以通过使用 glide lib 来完成吗?

可以使用Android的android.graphics.ColorMatrixclass将饱和度设置为0来制作ImageView灰度

分两步即可实现。 1.使用Glide使ImageView变圆。 2. 之后使用ColorMatrix class 使ImageView灰度化。

Glide.with(context)
.load(imageurl)
.apply(RequestOptions.circleCropTransform())
.into(holder.thumbnail);

ColorMatrix colorMatrix = new ColorMatrix();
colorMatrix.setSaturation(0);
ColorMatrixColorFilter filter = new ColorMatrixColorFilter(colorMatrix);
holder.thumbnail.setColorFilter(filter);

如果您使用的是 Kotlin:

            //Grey scale
            val colorMatrix =  ColorMatrix();
            colorMatrix.setSaturation(0.0f);
            val filter =  ColorMatrixColorFilter(colorMatrix);
            itemView.thumb.colorFilter = filter;