From d07814fd6d289487769bbe44b5d805d67c969944 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期四, 05 十二月 2024 15:14:16 +0800
Subject: [PATCH] 2024年12月05日15:13:57

---
 app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java |   53 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 52 insertions(+), 1 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
index 89cc4b0..4124f7a 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlCommonLogic.java
@@ -4,11 +4,16 @@
 import android.content.Context;
 import android.graphics.Bitmap;
 import android.os.SystemClock;
+import android.text.SpannableStringBuilder;
+import android.text.TextPaint;
 import android.text.TextUtils;
+import android.text.style.ClickableSpan;
 import android.view.View;
 import android.view.inputmethod.InputMethodManager;
 import android.widget.ImageView;
 import android.widget.TextView;
+
+import androidx.annotation.NonNull;
 
 import com.google.gson.JsonObject;
 import com.google.zxing.BarcodeFormat;
@@ -16,6 +21,8 @@
 import com.google.zxing.common.BitMatrix;
 import com.google.zxing.qrcode.QRCodeWriter;
 import com.hdl.linkpm.sdk.user.HDLLinkPMUser;
+import com.hdl.photovoltaic.HDLApp;
+import com.hdl.photovoltaic.R;
 import com.hdl.photovoltaic.config.ConstantManage;
 import com.hdl.photovoltaic.config.UserConfigManage;
 import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch;
@@ -23,6 +30,7 @@
 import com.hdl.photovoltaic.enums.UnitType;
 import com.hdl.photovoltaic.utils.GlideUtils;
 import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
+import com.hdl.sdk.link.core.callback.BaseCallBack;
 
 import org.greenrobot.eventbus.EventBus;
 import org.json.JSONObject;
@@ -221,7 +229,6 @@
     }
 
 
-
     /**
      * 娌℃湁鏁版嵁鐣岄潰鐨勬牱寮�
      *
@@ -238,6 +245,46 @@
             GlideUtils.getDrawableGifAnimation(mContext, imageView);
             textView.setText(str);
 
+        }
+    }
+
+
+    /**
+     * 璁剧疆瀛椾綋鐨勫瘜鏂囨湰宸茬粡涓嬪垝绾�
+     *
+     * @param view         褰撳墠缁勪欢
+     * @param str          鍐呭瀛楃涓�
+     * @param isUnderline  鏄惁鏄剧ず涓嬪垝绾匡紙true=鏄剧ず锛�
+     * @param spanCallBack 鐐瑰嚮鏂囨湰鍚庡洖璋冧簨浠�,涓嶉渶瑕佸洖璋冧簨浠跺~null
+     */
+    public void setSpan(TextView view, String str, boolean isUnderline, SpanCallBack spanCallBack) {
+
+        if (view == null || TextUtils.isEmpty(str)) {
+            return;
+        }
+        try {
+            SpannableStringBuilder registerTvStrSpannable = new SpannableStringBuilder(str);
+            registerTvStrSpannable.setSpan(new ClickableSpan() {
+                @Override
+                public void onClick(@NonNull View widget) {
+                    if (spanCallBack != null) {
+                        spanCallBack.onClick();
+                    }
+                }
+
+                @Override
+                public void updateDrawState(@NonNull TextPaint ds) {
+                    super.updateDrawState(ds);
+                    //璁剧疆瀛椾綋棰滆壊
+                    ds.setColor(HDLApp.getInstance().getResources().getColor(R.color.text_E6FFFFFF, null));
+                    // 鍘绘帀涓嬪垝绾�
+                    ds.setUnderlineText(isUnderline);
+                }
+
+
+            }, 0, str.length(), 0);
+            view.setText(registerTvStrSpannable);
+        } catch (Exception ignored) {
         }
     }
 
@@ -300,4 +347,8 @@
         EventBus.getDefault().post(baseEventBus);
     }
 
+    public interface SpanCallBack {
+        void onClick();
+    }
+
 }

--
Gitblit v1.8.0