1:修改使用Glide,原设置了尺寸,出现页面显示缓慢的情况,现在禁止了设置图片的大小,使用RGB_565,减少内存占用
This commit is contained in:
@@ -16,6 +16,7 @@ import android.widget.ImageView;
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.bumptech.glide.load.DecodeFormat;
|
||||
import com.bumptech.glide.load.engine.DiskCacheStrategy;
|
||||
import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool;
|
||||
import com.bumptech.glide.load.model.GlideUrl;
|
||||
@@ -40,28 +41,29 @@ public class ImageLoader {
|
||||
String urls = String.valueOf(new GlideUrl(url));
|
||||
return new RequestOptions().signature(new ObjectKey(urls)).diskCacheStrategy(DiskCacheStrategy.ALL)
|
||||
.skipMemoryCache(false)
|
||||
.format(DecodeFormat.PREFER_RGB_565);
|
||||
// 禁止尺寸影响缓存
|
||||
.override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL);
|
||||
// .override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL);
|
||||
}
|
||||
|
||||
public static void loadHead(Context context, ImageView view, String url) {
|
||||
RequestOptions options = RequestOptions.circleCropTransform();
|
||||
Glide.with(context).load(url).apply(createUrlOnlyOptions(url)).error(com.xscm.moduleutil.R.mipmap.default_avatar).placeholder(R.mipmap.default_avatar).thumbnail(0.1f).into(view);
|
||||
Glide.with(context).load(url).apply(createUrlOnlyOptions(url)).error(com.xscm.moduleutil.R.mipmap.default_avatar).placeholder(R.mipmap.default_avatar).thumbnail(0.3f).into(view);
|
||||
}
|
||||
|
||||
public static void loadHead(ImageView view, String url) {
|
||||
RequestOptions options = RequestOptions.circleCropTransform();
|
||||
Glide.with(view).load(url).apply(createUrlOnlyOptions(url)).error(R.mipmap.default_avatar).placeholder(R.mipmap.default_avatar).thumbnail(0.1f).into(view);
|
||||
Glide.with(view).load(url).apply(createUrlOnlyOptions(url)).error(R.mipmap.default_avatar).placeholder(R.mipmap.default_avatar).thumbnail(0.3f).into(view);
|
||||
}
|
||||
|
||||
public static void loadImage(ImageView view, String url) {
|
||||
RequestOptions options = RequestOptions.circleCropTransform();
|
||||
Glide.with(view).load(url).apply(createUrlOnlyOptions(url)).error(R.mipmap.default_image).placeholder(R.mipmap.default_image).thumbnail(0.1f).into(view);
|
||||
Glide.with(view).load(url).apply(createUrlOnlyOptions(url)).error(R.mipmap.default_image).placeholder(R.mipmap.default_image).thumbnail(0.3f).into(view);
|
||||
}
|
||||
|
||||
public static void loadImage(Context context, ImageView view, String url) {
|
||||
Glide.with(context).load(url).apply(createUrlOnlyOptions(url)).error(R.mipmap.default_image).placeholder(R.mipmap.default_image)
|
||||
.thumbnail(0.1f).into(view);
|
||||
.thumbnail(0.3f).into(view);
|
||||
}
|
||||
/**
|
||||
* 加载图片并灰度
|
||||
@@ -72,7 +74,7 @@ public class ImageLoader {
|
||||
*/
|
||||
public static void loadImage(Context context,ImageView view, String url, Float placeholder) {
|
||||
Glide.with(context).load(url).apply(RequestOptions.bitmapTransform(new GrayscaleTransformation(placeholder)))
|
||||
.error(R.mipmap.default_image).placeholder(R.mipmap.default_image).diskCacheStrategy(DiskCacheStrategy.RESOURCE).thumbnail(0.1f).into(view);
|
||||
.error(R.mipmap.default_image).placeholder(R.mipmap.default_image).diskCacheStrategy(DiskCacheStrategy.RESOURCE).thumbnail(0.3f).into(view);
|
||||
}
|
||||
// 可调节灰度程度的方法
|
||||
public static void loadGrayscaleImage(Context context, String url, ImageView imageView, float saturation) {
|
||||
|
||||
@@ -34,6 +34,7 @@ import com.bumptech.glide.Glide;
|
||||
import com.bumptech.glide.integration.webp.decoder.WebpDrawable;
|
||||
import com.bumptech.glide.integration.webp.decoder.WebpDrawableTransformation;
|
||||
import com.bumptech.glide.load.DataSource;
|
||||
import com.bumptech.glide.load.DecodeFormat;
|
||||
import com.bumptech.glide.load.Transformation;
|
||||
import com.bumptech.glide.load.engine.DiskCacheStrategy;
|
||||
import com.bumptech.glide.load.engine.GlideException;
|
||||
@@ -79,15 +80,16 @@ public class ImageUtils {
|
||||
private static RequestOptions createUrlOnlyOptions(String url) {
|
||||
return new RequestOptions().signature(new ObjectKey(url!=null ? url :"")).diskCacheStrategy(DiskCacheStrategy.ALL)
|
||||
.skipMemoryCache(false)
|
||||
.format(DecodeFormat.PREFER_RGB_565);
|
||||
// 禁止尺寸影响缓存
|
||||
.override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL);
|
||||
// .override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL);
|
||||
}
|
||||
|
||||
/**
|
||||
* 默认加载
|
||||
*/
|
||||
public static void loadImageView(String path, ImageView mImageView) {
|
||||
Glide.with(mImageView).load(path).apply(createUrlOnlyOptions(path)).thumbnail(0.1f).into(mImageView);
|
||||
Glide.with(mImageView).load(path).apply(createUrlOnlyOptions(path)).thumbnail(0.5f).into(mImageView);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -95,7 +97,7 @@ public class ImageUtils {
|
||||
*/
|
||||
public static void loadIcon(String path, ImageView mImageView) {
|
||||
mImageView.setVisibility(TextUtils.isEmpty(path) ? GONE : View.VISIBLE);
|
||||
Glide.with(mImageView).load(path).apply(createUrlOnlyOptions(path)).thumbnail(0.1f).into(mImageView);
|
||||
Glide.with(mImageView).load(path).apply(createUrlOnlyOptions(path)).thumbnail(0.3f).into(mImageView);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -115,7 +117,7 @@ public class ImageUtils {
|
||||
*/
|
||||
public static void loadSample(String path, ImageView mImageView, int width, int height) {
|
||||
RequestOptions options = new RequestOptions().override(width, height).diskCacheStrategy(DiskCacheStrategy.RESOURCE);
|
||||
Glide.with(mImageView).load(path).apply(options).thumbnail(0.1f).into(mImageView);
|
||||
Glide.with(mImageView).load(path).apply(options).thumbnail(0.5f).into(mImageView);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -208,7 +210,7 @@ public class ImageUtils {
|
||||
}
|
||||
}
|
||||
Glide.with(mImageView).load(path).apply(createUrlOnlyOptions(path)).error(errorRes).
|
||||
placeholder(errorRes).centerCrop().diskCacheStrategy(DiskCacheStrategy.ALL).thumbnail(0.1f).into(mImageView);
|
||||
placeholder(errorRes).centerCrop().diskCacheStrategy(DiskCacheStrategy.ALL).thumbnail(0.5f).into(mImageView);
|
||||
|
||||
}
|
||||
|
||||
@@ -225,7 +227,7 @@ public class ImageUtils {
|
||||
}
|
||||
}
|
||||
Glide.with(mImageView).load(path).apply(createUrlOnlyOptions(path))
|
||||
.placeholder(R.mipmap.default_avatar).diskCacheStrategy(DiskCacheStrategy.RESOURCE).thumbnail(0.1f).into(mImageView);
|
||||
.placeholder(R.mipmap.default_avatar).diskCacheStrategy(DiskCacheStrategy.RESOURCE).thumbnail(0.5f).into(mImageView);
|
||||
}
|
||||
|
||||
public static void loadHeadCC(String path, ImageView mImageView) {
|
||||
@@ -241,7 +243,7 @@ public class ImageUtils {
|
||||
}
|
||||
Glide.with(mImageView).asBitmap().load(path)
|
||||
.apply(createUrlOnlyOptions(path))
|
||||
.error(R.mipmap.default_avatar).placeholder(R.mipmap.default_avatar).centerCrop().thumbnail(0.1f).into(mImageView);
|
||||
.error(R.mipmap.default_avatar).placeholder(R.mipmap.default_avatar).centerCrop().thumbnail(0.5f).into(mImageView);
|
||||
}
|
||||
|
||||
public static void loadHead(String path, ImageView mImageView) {
|
||||
@@ -256,7 +258,7 @@ public class ImageUtils {
|
||||
}
|
||||
}
|
||||
Glide.with(mImageView).load(path).apply(createUrlOnlyOptions(path))
|
||||
.thumbnail(0.1f).into(mImageView);
|
||||
.thumbnail(0.5f).into(mImageView);
|
||||
}
|
||||
|
||||
public static void loadHeadCC(String path, ImageView mImageView, LinearLayout.LayoutParams params) {
|
||||
|
||||
Reference in New Issue
Block a user