From 30859ca8f2175475d2c666353bc27f3b2ceede53 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期四, 22 八月 2024 13:43:47 +0800 Subject: [PATCH] 2024年08月22日13:43:45 --- app/src/main/java/com/hdl/photovoltaic/utils/GlideUtils.java | 67 ++++++++++++++++++++++++++------- 1 files changed, 53 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/utils/GlideUtils.java b/app/src/main/java/com/hdl/photovoltaic/utils/GlideUtils.java index d9aa883..acafc84 100644 --- a/app/src/main/java/com/hdl/photovoltaic/utils/GlideUtils.java +++ b/app/src/main/java/com/hdl/photovoltaic/utils/GlideUtils.java @@ -9,9 +9,11 @@ import android.graphics.PorterDuffXfermode; import android.graphics.Rect; import android.graphics.RectF; +import android.text.TextUtils; import android.widget.ImageView; import androidx.annotation.Nullable; +import androidx.appcompat.content.res.AppCompatResources; import androidx.core.graphics.drawable.RoundedBitmapDrawable; import androidx.core.graphics.drawable.RoundedBitmapDrawableFactory; @@ -28,6 +30,7 @@ import com.bumptech.glide.request.RequestOptions; import com.bumptech.glide.request.target.Target; import com.hdl.photovoltaic.R; +import com.hdl.photovoltaic.other.HdlLogLogic; import com.hdl.photovoltaic.other.HdlThreadLogic; import java.io.InputStream; @@ -46,10 +49,14 @@ * @param imageview 鏄剧ず鍥剧墖缁勪欢 */ public static void getGeneralImage(Context context, String url, ImageView imageview) { - Glide.with(context) - .load(url) - .apply(getRequestOptions(false)) - .into(imageview); + if (url.startsWith("http://") || url.startsWith("https://")) { + Glide.with(context) + .load(url) + .apply(getRequestOptions(false)) + .into(imageview); + } else { + setDefaultImage(context, imageview, true); + } } /** @@ -61,11 +68,16 @@ * @param granularRoundedCorners 璁剧疆鍥剧墖瑙掑害 */ public static void getGranularRoundedCornersImage(Context context, String url, ImageView imageview, GranularRoundedCorners granularRoundedCorners) { - Glide.with(context) - .load(url) - .apply(getRequestOptions(false)) - .transform(granularRoundedCorners)//new GranularRoundedCorners(30f,80f,80f,30f) - .into(imageview); + if (url.startsWith("http://") || url.startsWith("https://")) { + + Glide.with(context) + .load(url) + .apply(getRequestOptions(false)) + .transform(granularRoundedCorners)//new GranularRoundedCorners(30f,80f,80f,30f) + .into(imageview); + } else { + setDefaultImage(context, imageview, true); + } } /** @@ -77,12 +89,20 @@ * @param roundedCorners 璁剧疆鍥剧墖瑙掑害鍊� */ public static void getRoundedCornersImage(Context context, String url, ImageView imageview, RoundedCorners roundedCorners, boolean userImage) { + if (!(url.startsWith("http://") || url.startsWith("https://"))) { + setDefaultImage(context, imageview, userImage); + return; + } +// if (url.startsWith("http://") || url.startsWith("https://")) { Glide.with(context) .load(url) .apply(getRequestOptions(userImage)) .transform(new CenterCrop(), roundedCorners)//Glide鍔犺浇鍥剧墖鍦嗚鏁堟灉涓嶪mageView鐨凷caleType鍐茬獊闂 // .transform(roundedCorners) .into(imageview); +// } else { +// setDefaultImage(context, imageview, userImage); +// } } /** @@ -93,11 +113,16 @@ * @param imageview 鏄剧ず鍥剧墖缁勪欢 */ public static void getCircleCropImage(Context context, String url, ImageView imageview, boolean userImage) { - Glide.with(context) - .load(url) - .apply(getRequestOptions(userImage)) - .transform(new CircleCrop()) - .into(imageview); + + if (url.startsWith("http://") || url.startsWith("https://")) { + Glide.with(context) + .load(url) + .apply(getRequestOptions(userImage)) + .transform(new CircleCrop()) + .into(imageview); + } else { + setDefaultImage(context, imageview, userImage); + } } @@ -208,5 +233,19 @@ .into(imageview); } + private static void setDefaultImage(Context context, ImageView imageview, boolean userImage) { + HdlThreadLogic.runMainThread(new Runnable() { + @Override + public void run() { + if (userImage) { + imageview.setImageDrawable(AppCompatResources.getDrawable(context, R.drawable.default_image)); + } else { + imageview.setImageDrawable(AppCompatResources.getDrawable(context, R.drawable.default_user)); + } + } + }); + + } + } -- Gitblit v1.8.0