75 lines
2.7 KiB
Java
75 lines
2.7 KiB
Java
package com.xscm.moduleutil.utils;
|
|
|
|
|
|
import android.content.Context;
|
|
import android.graphics.Bitmap;
|
|
import android.graphics.Canvas;
|
|
import android.graphics.Color;
|
|
import android.graphics.ColorMatrix;
|
|
import android.graphics.ColorMatrixColorFilter;
|
|
import android.graphics.Paint;
|
|
import android.graphics.PorterDuff;
|
|
import android.text.TextUtils;
|
|
import android.view.View;
|
|
import android.widget.ImageView;
|
|
|
|
import androidx.annotation.NonNull;
|
|
|
|
import com.bumptech.glide.Glide;
|
|
import com.bumptech.glide.load.engine.DiskCacheStrategy;
|
|
import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool;
|
|
import com.bumptech.glide.load.resource.bitmap.BitmapTransformation;
|
|
import com.bumptech.glide.request.RequestOptions;
|
|
import com.xscm.moduleutil.R;
|
|
import com.xscm.moduleutil.widget.GrayscaleTransformation;
|
|
|
|
import java.nio.charset.StandardCharsets;
|
|
import java.security.MessageDigest;
|
|
|
|
|
|
/**
|
|
* Copyright (c) 1
|
|
*
|
|
*/
|
|
|
|
public class ImageLoader {
|
|
|
|
|
|
public static void loadHead(Context context, ImageView view, String url) {
|
|
RequestOptions options = RequestOptions.circleCropTransform();
|
|
Glide.with(context).load(url).apply(options).error(com.xscm.moduleutil.R.mipmap.default_avatar).placeholder(R.mipmap.default_avatar).diskCacheStrategy(DiskCacheStrategy.ALL).into(view);
|
|
}
|
|
|
|
public static void loadHead(ImageView view, String url) {
|
|
RequestOptions options = RequestOptions.circleCropTransform();
|
|
Glide.with(view).load(url).apply(options).error(R.mipmap.default_avatar).placeholder(R.mipmap.default_avatar).diskCacheStrategy(DiskCacheStrategy.ALL).into(view);
|
|
}
|
|
|
|
public static void loadImage(ImageView view, String url) {
|
|
Glide.with(view).load(url).error(R.mipmap.default_image).placeholder(R.mipmap.default_image).diskCacheStrategy(DiskCacheStrategy.ALL).into(view);
|
|
}
|
|
|
|
public static void loadImage(Context context, ImageView view, String url) {
|
|
Glide.with(context).load(url).error(R.mipmap.default_image).placeholder(R.mipmap.default_image)
|
|
.diskCacheStrategy(DiskCacheStrategy.ALL).into(view);
|
|
}
|
|
|
|
// 可调节灰度程度的方法
|
|
public static void loadGrayscaleImage(Context context, String url, ImageView imageView, float saturation) {
|
|
Glide.with(context)
|
|
.load(url)
|
|
.apply(RequestOptions.bitmapTransform(new GrayscaleTransformation(saturation)))
|
|
.into(imageView);
|
|
}
|
|
|
|
public static void loadIcon(Context context, ImageView view, String url) {
|
|
if (TextUtils.isEmpty(url)) {
|
|
view.setVisibility(View.GONE);
|
|
} else {
|
|
view.setVisibility(View.VISIBLE);
|
|
}
|
|
Glide.with(context).load(url).diskCacheStrategy(DiskCacheStrategy.ALL).into(view);
|
|
}
|
|
|
|
}
|