From a0e8f81afc4fe2a21a5c504d53e569ea50d463d6 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期五, 15 三月 2024 11:51:23 +0800
Subject: [PATCH] 2024年03月15日11:51:17

---
 app/src/main/java/com/hdl/photovoltaic/utils/GlideUtils.java |   50 ++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 46 insertions(+), 4 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 92193b1..c76747d 100644
--- a/app/src/main/java/com/hdl/photovoltaic/utils/GlideUtils.java
+++ b/app/src/main/java/com/hdl/photovoltaic/utils/GlideUtils.java
@@ -11,15 +11,22 @@
 import android.graphics.RectF;
 import android.widget.ImageView;
 
+import androidx.annotation.Nullable;
 import androidx.core.graphics.drawable.RoundedBitmapDrawable;
 import androidx.core.graphics.drawable.RoundedBitmapDrawableFactory;
 
 import com.bumptech.glide.Glide;
+import com.bumptech.glide.load.DataSource;
+import com.bumptech.glide.load.engine.DiskCacheStrategy;
+import com.bumptech.glide.load.engine.GlideException;
 import com.bumptech.glide.load.resource.bitmap.CenterCrop;
 import com.bumptech.glide.load.resource.bitmap.CircleCrop;
 import com.bumptech.glide.load.resource.bitmap.GranularRoundedCorners;
 import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
+import com.bumptech.glide.load.resource.gif.GifDrawable;
+import com.bumptech.glide.request.RequestListener;
 import com.bumptech.glide.request.RequestOptions;
+import com.bumptech.glide.request.target.Target;
 import com.hdl.photovoltaic.R;
 import com.hdl.photovoltaic.other.HdlThreadLogic;
 
@@ -96,9 +103,9 @@
 
     private static RequestOptions getRequestOptions() {
         return new RequestOptions()
-                .placeholder(R.mipmap.ic_launcher)
-                .error(R.mipmap.ic_launcher)
-                .fallback(R.mipmap.ic_launcher);
+                .placeholder(R.drawable.default_user)
+                .error(R.drawable.default_user)
+                .fallback(R.drawable.default_user);
 //                .override(113, 130);
 
     }
@@ -123,7 +130,7 @@
                     if (conn.getResponseCode() == 200) {
                         InputStream inStream = conn.getInputStream();
                         Bitmap bitmap = BitmapFactory.decodeStream(inStream);
-                        imageView.setImageBitmap(getRoundedCornerBitmap(bitmap,pixels));
+                        imageView.setImageBitmap(getRoundedCornerBitmap(bitmap, pixels));
                     }
                 } catch (Exception e) {
                 }
@@ -160,4 +167,39 @@
         canvas.drawBitmap(bitmap, rect, rect, paint);
         return output;
     }
+
+
+    /**
+     * 鐣岄潰绾挎暟鎹樉绀烘牱寮�
+     *
+     * @param context   涓婁笅鏂�
+     * @param imageview 鏄剧ず鍥剧墖缁勪欢
+     */
+    public static void getDrawableGifAnimation(Context context, ImageView imageview) {
+        if (context == null) {
+            return;
+        }
+        if (imageview == null) {
+            return;
+        }
+        Glide.with(context)
+                .asGif()
+                .load(R.drawable.null_data_icon)//(res鎴栬�単if鐨剈rl閾炬帴)
+                .diskCacheStrategy(DiskCacheStrategy.ALL)
+                .listener(new RequestListener<GifDrawable>() {
+                    @Override
+                    public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<GifDrawable> target, boolean isFirstResource) {
+                        return false;
+                    }
+
+                    @Override
+                    public boolean onResourceReady(GifDrawable resource, Object model, Target<GifDrawable> target, DataSource dataSource, boolean isFirstResource) {
+//                            resource.setLoopCount(1);鎺у埗鎾斁娆℃暟
+                        return false;
+                    }
+                })
+                .into(imageview);
+    }
+
+
 }

--
Gitblit v1.8.0