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/ui/LoginActivity.java |  300 +++++++++++++++++++++++++++++++++--------------------------
 1 files changed, 168 insertions(+), 132 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/LoginActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/LoginActivity.java
index bd662d4..0caff88 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/LoginActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/LoginActivity.java
@@ -4,7 +4,9 @@
 import android.content.Intent;
 import android.os.Bundle;
 import android.text.Editable;
+import android.text.Spannable;
 import android.text.SpannableStringBuilder;
+import android.text.Spanned;
 import android.text.TextPaint;
 import android.text.TextUtils;
 import android.text.TextWatcher;
@@ -12,6 +14,8 @@
 import android.text.method.LinkMovementMethod;
 import android.text.method.PasswordTransformationMethod;
 import android.text.style.ClickableSpan;
+import android.text.style.StyleSpan;
+import android.util.Log;
 import android.view.View;
 import android.widget.TextView;
 
@@ -30,6 +34,8 @@
 import com.hdl.photovoltaic.base.CustomBaseActivity;
 import com.hdl.photovoltaic.config.UserConfigManage;
 import com.hdl.photovoltaic.databinding.ActivityHomeLoginBinding;
+import com.hdl.photovoltaic.listener.LinkCallBack;
+import com.hdl.photovoltaic.other.HdlDeviceLogic;
 import com.hdl.photovoltaic.other.HdlResidenceLogic;
 import com.hdl.photovoltaic.ui.account.ChangePassword;
 import com.hdl.photovoltaic.ui.account.RegisterAccountActivity;
@@ -47,6 +53,7 @@
 import com.hdl.photovoltaic.widget.ConfirmationCancelDialog1;
 import com.hdl.photovoltaic.widget.ListDialog;
 import com.hdl.photovoltaic.widget.adapter.ListDialogAdapter;
+import com.hdl.sdk.link.common.exception.HDLLinkException;
 
 import java.util.List;
 
@@ -117,14 +124,14 @@
         } else {
             viewBinding.homeLoginRegisterTv.setVisibility(View.VISIBLE);
         }
-
+//        String acc = "18402017839";
 //        String acc = "13375012441";
-        String acc = "18316672920";
-//        String acc = "nuy13368@uzxia.com";
-        String pws = "123456";
+//        String acc = "18316672920";
+//        String pws = "123456";
         //娴嬭瘯鐢�
-        viewBinding.homeLoginAccountEt.setText(acc);
-        viewBinding.homeLoginPasswordEt.setText(pws);
+        viewBinding.homeLoginAccountEt.setText(UserConfigManage.getInstance().getAccount());
+//        viewBinding.homeLoginPasswordEt.setText(pws);
+        checkClearIconShowOrNot(viewBinding.homeLoginAccountEt.getText().toString());
         isLoginTextViewEnabled();
     }
 
@@ -133,14 +140,9 @@
      */
     private void initEvent() {
 
-        viewBinding.homeLoginMoreIv.setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View v) {
-                HdlThreadLogic.toast(_mActivity, getString(R.string.loading_not_supported));
-            }
-        });
+
         //璇█閫夋嫨
-        viewBinding.homeLoginLanguageTv.setOnClickListener(new View.OnClickListener() {
+        viewBinding.homeLoginLanguageLl.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
                 ListDialog listDialog = new ListDialog(_mActivity);
@@ -164,15 +166,18 @@
             }
         });
 
+        //杈撳叆璐﹀彿
         viewBinding.homeLoginAccountEt.addTextChangedListener(accountTextWatcher);
+        //娓呴櫎璐﹀彿鎸夐挳
         viewBinding.homeLoginClearContentsIv.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
                 viewBinding.homeLoginAccountEt.setText("");
             }
         });
-
+        //杈撳叆瀵嗙爜
         viewBinding.homeLoginPasswordEt.addTextChangedListener(passwordTextWatcher);
+        //瀵嗙爜闅愯棌鎸夐挳
         viewBinding.homeLoginHideIv.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
@@ -200,7 +205,7 @@
                 UserConfigManage.getInstance().setBAccount(v.isSelected());
                 viewBinding.homeLoginCheckBCIv.setSelected(UserConfigManage.getInstance().isBAccount());
                 if (UserConfigManage.getInstance().isBAccount()) {
-                    viewBinding.homeLoginRegisterTv.setVisibility(View.GONE);
+                    viewBinding.homeLoginRegisterTv.setVisibility(View.INVISIBLE);
                 } else {
                     viewBinding.homeLoginRegisterTv.setVisibility(View.VISIBLE);
                 }
@@ -235,45 +240,55 @@
                 HdlAccountLogic.getInstance().regionByAccount(account, new CloudCallBeak<HDLUserRegionBean>() {
                     @Override
                     public void onSuccess(HDLUserRegionBean obj) {
-                        String APP_REGIONURL_TEST = "http://47.114.131.143:27199";
-                        AppConfigManage.setUserRegionUrl(APP_REGIONURL_TEST);
+                        //寮�鍙戠幆澧�
+//                        String APP_REGIONURL_TEST = "http://47.114.131.143:27199";
+//                        AppConfigManage.setUserRegionUrl(APP_REGIONURL_TEST);
                         //鍒濆鍖栨湇鍔″煙鍚�
-//                        AppConfigManage.setUserRegionUrl(obj.getRegionUrl());
+                        AppConfigManage.setUserRegionUrl(obj.getRegionUrl());
                         HDLLinkPMUser.getInstance().setUserRegionUrl(AppConfigManage.getUserRegionUrl());
                         HdlAccountLogic.getInstance().loginByPassword(account, password, new ILoginCallBack() {
                             @Override
                             public void onSuccess(HDLLoginBean obj) {
-                                HdlResidenceLogic.getInstance().getResidenceIdList("", "", new CloudCallBeak<List<HouseIdBean>>() {
-                                    @Override
-                                    public void onSuccess(List<HouseIdBean> obj) {
-                                        hideLoading();
-                                        HdlResidenceLogic.getInstance().setHouseIdList(obj);
-                                        restoreButtonStyleToInitializeState();
-                                        if (UserConfigManage.getInstance().isBAccount()) {
-                                            //瀹夎鍟嗚烦杞晫闈�
-                                            startActivity(BPowerStationActivity.class);
-                                        } else {
-                                            //C绔敤鎴疯烦杞晫闈�
-                                            startActivity(CPowerStationActivity.class);
+                                if (UserConfigManage.getInstance().isBAccount()) {
+                                    restoreButtonStyleToInitializeState();
+                                    //瀹夎鍟嗚烦杞晫闈�
+                                    startActivity(BPowerStationActivity.class);
+                                    hideLoading();
+                                    finish();
+                                } else {
+                                    //C绔渶瑕佸厛鑾峰彇鐢电珯鍒楄〃;
+                                    HdlResidenceLogic.getInstance().getResidenceIdList("", "", new CloudCallBeak<List<HouseIdBean>>() {
+                                        @Override
+                                        public void onSuccess(List<HouseIdBean> obj) {
+                                            hideLoading();
+                                            HdlResidenceLogic.getInstance().setHouseIdList(obj);
+                                            restoreButtonStyleToInitializeState();
+                                            if (UserConfigManage.getInstance().isBAccount()) {
+                                                //瀹夎鍟嗚烦杞晫闈�
+                                                startActivity(BPowerStationActivity.class);
+                                            } else {
+                                                //C绔敤鎴疯烦杞晫闈�
+                                                startActivity(CPowerStationActivity.class);
 
+                                            }
+                                            finish();
                                         }
-                                        finish();
-                                    }
 
-                                    @Override
-                                    public void onFailure(HDLException e) {
-                                        hideLoading();
-                                        restoreButtonStyleToInitializeState();
-                                        if (UserConfigManage.getInstance().isBAccount()) {
-                                            //瀹夎鍟嗚烦杞晫闈�
-                                            startActivity(BPowerStationActivity.class);
-                                        } else {
-                                            //C绔敤鎴疯烦杞晫闈�
-                                            startActivity(CPowerStationActivity.class);
+                                        @Override
+                                        public void onFailure(HDLException e) {
+                                            hideLoading();
+                                            restoreButtonStyleToInitializeState();
+                                            if (UserConfigManage.getInstance().isBAccount()) {
+                                                //瀹夎鍟嗚烦杞晫闈�
+                                                startActivity(BPowerStationActivity.class);
+                                            } else {
+                                                //C绔敤鎴疯烦杞晫闈�
+                                                startActivity(CPowerStationActivity.class);
+                                            }
+                                            finish();
                                         }
-                                        finish();
-                                    }
-                                });
+                                    });
+                                }
                             }
 
                             @Override
@@ -359,6 +374,21 @@
     }
 
     /**
+     * 妫�娴嬫竻闄ゅ浘鏍囨槸鍚︽樉绀�
+     */
+    private void checkClearIconShowOrNot(String s) {
+        if (s.replace(" ", "").length() > 0) {
+            if (viewBinding.homeLoginClearContentsIv.getVisibility() == View.GONE) {
+                viewBinding.homeLoginClearContentsIv.setVisibility(View.VISIBLE);
+            }
+        } else {
+            if (viewBinding.homeLoginClearContentsIv.getVisibility() == View.VISIBLE) {
+                viewBinding.homeLoginClearContentsIv.setVisibility(View.GONE);
+            }
+        }
+    }
+
+    /**
      * 鏈湴鏍¢獙杈撳叆璐﹀彿鎴栬�呭瘑鐮佹槸鍚︽纭�
      *
      * @param account  璐﹀彿
@@ -409,75 +439,88 @@
      * @param textView 褰撳墠缁勪欢
      */
     private void setStringDifferentColors(TextView textView) {
+        try {
 
-        if (textView == null) {
-            return;
+
+            if (textView == null) {
+                return;
+            }
+
+            String s = textView.getText().toString();
+            if (!s.contains("銆�")) {
+                return;
+            }
+
+            int startIndex1 = s.indexOf("銆�");
+            int endIndex1 = s.indexOf("銆�") + 1;
+
+
+            int startIndex2 = s.lastIndexOf("銆�");
+            int endIndex2 = s.lastIndexOf("銆�") + 1;
+            if (UserConfigManage.getInstance().getCurrentAppLanguage().equals(LocalManageUtil.en)) {
+                s = s.replace("銆�", "").replace("銆�", "");
+                endIndex1 -= 1;
+                startIndex2 -= 2;//绉婚櫎"銆�"鍜�"銆�"鎬婚暱搴﹀彂鐢熷彉鍖栵紝绱㈠紩涔熸敼鍙�;
+                endIndex2 -= 4;//绉婚櫎"銆�"鍜�"銆�"鎬婚暱搴﹀彂鐢熷彉鍖栵紝绱㈠紩涔熸敼鍙�;
+            }
+            SpannableStringBuilder spannable = new SpannableStringBuilder(s);
+            //璁剧疆鏂囧瓧鐨勫墠鏅壊
+            if (textView.getTag() != null && textView.getTag().toString().equals("click")) {
+                spannable.setSpan(new ClickableSpan() {
+                    @Override
+                    public void onClick(@NonNull View widget) {
+                        //todo 闇�瑕佽烦杞埌鏈嶅姟鍗忚鐣岄潰
+                        Intent intent = new Intent();
+                        intent.putExtra("type", WebActivity.ServiceAgreement);
+                        intent.setClass(_mActivity, WebActivity.class);
+                        startActivity(intent);
+                    }
+
+                    @Override
+                    public void updateDrawState(@NonNull TextPaint ds) {
+                        super.updateDrawState(ds);
+                        //璁剧疆瀛椾綋棰滆壊
+                        ds.setColor(getResources().getColor(R.color.text_245EC3, null));
+                        // 鍘绘帀涓嬪垝绾�
+                        ds.setUnderlineText(false);
+                    }
+
+
+                }, startIndex1, endIndex1, 0);
+                spannable.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), startIndex1, endIndex1, 0);
+
+                spannable.setSpan(new ClickableSpan() {
+                    @Override
+                    public void onClick(@NonNull View widget) {
+                        //todo 闇�瑕佽烦杞埌闅愮鐣岄潰
+                        Intent intent = new Intent();
+                        intent.putExtra("type", WebActivity.PrivacyAgreement);
+                        intent.setClass(_mActivity, WebActivity.class);
+                        startActivity(intent);
+                    }
+
+                    @Override
+                    public void updateDrawState(@NonNull TextPaint ds) {
+                        super.updateDrawState(ds);
+                        //璁剧疆瀛椾綋棰滆壊
+                        ds.setColor(getResources().getColor(R.color.text_245EC3, null));
+                        // 鍘绘帀涓嬪垝绾�
+                        ds.setUnderlineText(false);
+                    }
+
+
+                }, startIndex2, endIndex2, 0);
+                spannable.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), startIndex2, endIndex2, 0);
+
+
+            }
+            textView.setText(spannable);
+            //涓�旈亣鍒扮偣鍑诲悗瀛椾綋鏄剧ず楂樹寒锛屽彇娑堥珮浜�
+            textView.setHighlightColor(getResources().getColor(R.color.text_00000000, null));
+            //鏈�鍚庤缃彲鐐瑰嚮锛屽繀椤诲疄鐜帮紝鍚﹀垯鍙兘鏄剧ず鏍峰紡锛屾棤娉曞疄鐜扮偣鍑绘晥鏋�
+            textView.setMovementMethod(LinkMovementMethod.getInstance());
+        } catch (Exception ignored) {
         }
-
-        String s = textView.getText().toString();
-        if (!s.contains("銆�")) {
-            return;
-        }
-        int startIndex1 = s.indexOf("銆�");
-        int endIndex1 = s.indexOf("銆�") + 1;
-
-        int startIndex2 = s.lastIndexOf("銆�");
-        int endIndex2 = s.lastIndexOf("銆�") + 1;
-
-        SpannableStringBuilder spannable = new SpannableStringBuilder(s);
-        //璁剧疆鏂囧瓧鐨勫墠鏅壊
-        if (textView.getTag() != null && textView.getTag().toString().equals("click")) {
-            spannable.setSpan(new ClickableSpan() {
-                @Override
-                public void onClick(@NonNull View widget) {
-                    //todo 闇�瑕佽烦杞埌鏈嶅姟鍗忚鐣岄潰
-                    Intent intent = new Intent();
-                    intent.putExtra("type", WebActivity.ServiceAgreement);
-                    intent.setClass(_mActivity, WebActivity.class);
-                    startActivity(intent);
-                }
-
-                @Override
-                public void updateDrawState(@NonNull TextPaint ds) {
-                    super.updateDrawState(ds);
-                    //璁剧疆瀛椾綋棰滆壊
-                    ds.setColor(getResources().getColor(R.color.text_245EC3, null));
-                    // 鍘绘帀涓嬪垝绾�
-                    ds.setUnderlineText(false);
-                }
-
-
-            }, startIndex1, endIndex1, 0);
-
-            spannable.setSpan(new ClickableSpan() {
-                @Override
-                public void onClick(@NonNull View widget) {
-                    //todo 闇�瑕佽烦杞埌闅愮鐣岄潰
-                    Intent intent = new Intent();
-                    intent.putExtra("type", WebActivity.PrivacyAgreement);
-                    intent.setClass(_mActivity, WebActivity.class);
-                    startActivity(intent);
-                }
-
-                @Override
-                public void updateDrawState(@NonNull TextPaint ds) {
-                    super.updateDrawState(ds);
-                    //璁剧疆瀛椾綋棰滆壊
-                    ds.setColor(getResources().getColor(R.color.text_245EC3, null));
-                    // 鍘绘帀涓嬪垝绾�
-                    ds.setUnderlineText(false);
-                }
-
-
-            }, startIndex2, endIndex2, 0);
-
-
-        }
-        textView.setText(spannable);
-        //涓�旈亣鍒扮偣鍑诲悗瀛椾綋鏄剧ず楂樹寒锛屽彇娑堥珮浜�
-        textView.setHighlightColor(getResources().getColor(R.color.text_00000000, null));
-        //鏈�鍚庤缃彲鐐瑰嚮锛屽繀椤诲疄鐜帮紝鍚﹀垯鍙兘鏄剧ず鏍峰紡锛屾棤娉曞疄鐜扮偣鍑绘晥鏋�
-        textView.setMovementMethod(LinkMovementMethod.getInstance());
 
     }
 
@@ -486,27 +529,28 @@
      * 寮圭獥
      */
     private void getDialog() {
-        ConfirmationCancelDialog1 dialog = new ConfirmationCancelDialog1(_mActivity);
-        dialog.show();
-//        dialog.setTitle(getString(R.string.loading_privacy));
-        dialog.isHideTitle(true);
-        dialog.setContent(getString(R.string.loading_privacy_server));
-        setStringDifferentColors(dialog.getContentTextView());
-        dialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() {
+
+        ConfirmationCancelDialog confirmationCancelDialog = new ConfirmationCancelDialog(_mActivity);
+        confirmationCancelDialog.show();
+        confirmationCancelDialog.isHideTitle(true);
+        confirmationCancelDialog.setContent(getString(R.string.loading_privacy_server));
+        setStringDifferentColors(confirmationCancelDialog.getContentTextView());
+        confirmationCancelDialog.setConfirmation(getString(R.string.loading_agree));
+        confirmationCancelDialog.setCancel(getString(R.string.loading_on_agree));
+        confirmationCancelDialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() {
             @Override
             public void Confirm() {
-
                 UserConfigManage.getInstance().setAcceiptPolicy(true);
                 viewBinding.homeLoginPrivacyCheckIv.setSelected(true);
-                dialog.dismiss();
+                confirmationCancelDialog.dismiss();
             }
         });
-        dialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() {
+        confirmationCancelDialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() {
             @Override
             public void Cancel() {
                 UserConfigManage.getInstance().setAcceiptPolicy(false);
                 viewBinding.homeLoginPrivacyCheckIv.setSelected(false);
-                dialog.dismiss();
+                confirmationCancelDialog.dismiss();
             }
         });
 
@@ -527,15 +571,7 @@
 
         @Override
         public void afterTextChanged(Editable s) {
-            if (s.length() > 0) {
-                if (viewBinding.homeLoginClearContentsIv.getVisibility() == View.GONE) {
-                    viewBinding.homeLoginClearContentsIv.setVisibility(View.VISIBLE);
-                }
-            } else {
-                if (viewBinding.homeLoginClearContentsIv.getVisibility() == View.VISIBLE) {
-                    viewBinding.homeLoginClearContentsIv.setVisibility(View.GONE);
-                }
-            }
+            checkClearIconShowOrNot(s.toString());
             isLoginTextViewEnabled();
         }
     };

--
Gitblit v1.8.0