From 2225b1f0727fb74e10ac5692e68e4cd48f4f62d7 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期一, 03 三月 2025 15:02:14 +0800
Subject: [PATCH] 2025年03月03日15:02:11

---
 app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java |   77 ++++++++++++++++++++++++++++++++------
 1 files changed, 64 insertions(+), 13 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java b/app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java
index 20c4e31..2bca9c2 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java
@@ -5,13 +5,18 @@
 import android.os.CountDownTimer;
 import android.text.Editable;
 import android.text.InputType;
+import android.text.SpannableStringBuilder;
+import android.text.TextPaint;
 import android.text.TextUtils;
 import android.text.TextWatcher;
 import android.text.method.HideReturnsTransformationMethod;
 import android.text.method.PasswordTransformationMethod;
+import android.text.style.ClickableSpan;
 import android.view.View;
+import android.widget.TextView;
 
 
+import androidx.annotation.NonNull;
 import androidx.appcompat.content.res.AppCompatResources;
 
 import com.hdl.linkpm.sdk.core.exception.HDLException;
@@ -24,9 +29,13 @@
 import com.hdl.photovoltaic.databinding.ActivityChangePasswordBinding;
 import com.hdl.photovoltaic.listener.CloudCallBeak;
 import com.hdl.photovoltaic.other.HdlAccountLogic;
+import com.hdl.photovoltaic.other.HdlCommonLogic;
 import com.hdl.photovoltaic.other.HdlThreadLogic;
 import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
 import com.hdl.photovoltaic.widget.ConfirmationTipDialog;
+import com.sahooz.library.countrypicker.Country;
+import com.sahooz.library.countrypicker.CountryPickerFragment;
+import com.sahooz.library.countrypicker.PickCountryCallback;
 
 /**
  * 蹇樿瀵嗙爜鐣岄潰
@@ -54,6 +63,8 @@
 
     @Override
     public void onBindView(Bundle savedInstanceState) {
+        setStatusBarTranslucent();
+        getWindow().setNavigationBarColor(getColor(R.color.text_00000000));
         //鍒濆鍖�
         initView();
         //鍒濆鍖栫晫闈㈢洃鍚櫒
@@ -65,7 +76,15 @@
      */
     private void initView() {
         switchPhoneOrMailView();
+        try {
+            Country.load(this);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        HdlCommonLogic.getInstance().setSpan(viewBinding.changePhoneVerificationTv, viewBinding.changePhoneVerificationTv.getText().toString(), true, null);
+        HdlCommonLogic.getInstance().setSpan(viewBinding.changeMailVerificationTv, viewBinding.changeMailVerificationTv.getText().toString(), true, null);
     }
+
 
     /**
      * 璁剧疆鐩戝惉浜嬩欢
@@ -97,6 +116,14 @@
 
             }
         });
+        //閫夋嫨鎵嬫満鍖哄彿鐨�
+        viewBinding.regionAccountRl.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                selectArea();
+            }
+        });
+
         //杈撳叆鎵嬫満鍙锋垨鑰呴偖绠�
         viewBinding.changeAccountEt.addTextChangedListener(accountTextWatcher);
         //鎵嬫満鍙疯幏鍙栭獙璇佺爜
@@ -234,6 +261,21 @@
     }
 
     /**
+     * 鍥藉鎵嬫満鍙峰尯鍙峰脊绐�
+     */
+    private void selectArea() {
+        CountryPickerFragment dialog = new CountryPickerFragment(this, new PickCountryCallback() {
+            @Override
+            public void onPick(Country country) {
+                if (country.flag != 0) viewBinding.regionAccountTv.setText(country.name);
+                viewBinding.regionAccountNumberTv.setText("+" + country.code);
+            }
+        });
+        dialog.show();
+        dialog.setDialogSize();
+    }
+
+    /**
      * 鍙戦�侀獙璇佺爜鎸囦护
      */
     private void sendVerification() {
@@ -255,7 +297,7 @@
                 //璁剧疆璐﹀彿鎵�鍦ㄥ尯鍩熷崗璁強鍦板潃
                 AppConfigManage.setUserRegionUrl(obj.getRegionUrl());
                 HDLLinkPMUser.getInstance().setUserRegionUrl(AppConfigManage.getUserRegionUrl());
-                HdlAccountLogic.getInstance().sendVerifyCode(isPhoneType, account, "86", 2, new CloudCallBeak<Boolean>() {
+                HdlAccountLogic.getInstance().sendVerifyCode(isPhoneType, account, viewBinding.regionAccountNumberTv.getText().toString(), 2, new CloudCallBeak<Boolean>() {
                     @Override
                     public void onSuccess(Boolean obj) {
                         if (isPhoneType) {
@@ -289,7 +331,7 @@
             long time = (millisUntilFinished / 1000);
             String str = time + "s" + getString(R.string.home_login_psw_verification_repeater);
             viewBinding.changePhoneVerificationTv.setText(str);
-            viewBinding.changePhoneVerificationTv.setTextColor(getResources().getColor(R.color.text_25000000));
+//            viewBinding.changePhoneVerificationTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
             viewBinding.changePhoneVerificationTv.setEnabled(false);
 
         }
@@ -297,7 +339,7 @@
         @Override
         public void onFinish() {
             viewBinding.changePhoneVerificationTv.setText(getString(R.string.home_login_verification_regain));
-            viewBinding.changePhoneVerificationTv.setTextColor(getResources().getColor(R.color.text_245EC3));
+//            viewBinding.changePhoneVerificationTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
             viewBinding.changePhoneVerificationTv.setEnabled(true);
 
 
@@ -313,7 +355,7 @@
             String str = time + "s" + getString(R.string.home_login_psw_verification_repeater);
 
             viewBinding.changeMailVerificationTv.setText(str);
-            viewBinding.changeMailVerificationTv.setTextColor(getResources().getColor(R.color.text_25000000));
+//            viewBinding.changeMailVerificationTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
             viewBinding.changeMailVerificationTv.setEnabled(false);
 
         }
@@ -321,7 +363,7 @@
         @Override
         public void onFinish() {
             viewBinding.changeMailVerificationTv.setText(getString(R.string.home_login_verification_regain));
-            viewBinding.changeMailVerificationTv.setTextColor(getResources().getColor(R.color.text_245EC3));
+//            viewBinding.changeMailVerificationTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
             viewBinding.changeMailVerificationTv.setEnabled(true);
 
         }
@@ -334,15 +376,17 @@
         if (isPhoneType) {
             //鎵嬫満鍙�
             viewBinding.changePhoneIc.accountTitleTv.setText(R.string.home_login_phone);
-            viewBinding.changePhoneIc.accountTitleTv.setTextSize(20);
-            viewBinding.changePhoneIc.accountTitleTv.setTextColor(getResources().getColor(R.color.text_90000000));
+            viewBinding.changePhoneIc.accountTitleTv.setTextSize(18);
+            viewBinding.changePhoneIc.accountTitleTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
             viewBinding.changePhoneIc.lineV.setVisibility(View.VISIBLE);
 
             viewBinding.changeMailRl.accountTitleTv.setText(R.string.home_login_email);
-            viewBinding.changeMailRl.accountTitleTv.setTextSize(16);
-            viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_40000000));
+            viewBinding.changeMailRl.accountTitleTv.setTextSize(14);
+            viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_66FFFFFF));
             viewBinding.changeMailRl.lineV.setVisibility(View.GONE);
 
+
+            viewBinding.regionAccountRl.setVisibility(View.VISIBLE);
             //杈撳叆鎵嬫満鍙�
             viewBinding.changeAccountEt.setInputType(InputType.TYPE_CLASS_NUMBER);
             viewBinding.changeAccountEt.setHint(R.string.home_login_input_phone);
@@ -364,14 +408,16 @@
         } else {
             //閭
             viewBinding.changePhoneIc.accountTitleTv.setText(R.string.home_login_phone);
-            viewBinding.changePhoneIc.accountTitleTv.setTextSize(16);
-            viewBinding.changePhoneIc.accountTitleTv.setTextColor(getResources().getColor(R.color.text_40000000));
+            viewBinding.changePhoneIc.accountTitleTv.setTextSize(14);
+            viewBinding.changePhoneIc.accountTitleTv.setTextColor(getResources().getColor(R.color.text_66FFFFFF));
             viewBinding.changePhoneIc.lineV.setVisibility(View.GONE);
 
             viewBinding.changeMailRl.accountTitleTv.setText(R.string.home_login_email);
-            viewBinding.changeMailRl.accountTitleTv.setTextSize(20);
-            viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_90000000));
+            viewBinding.changeMailRl.accountTitleTv.setTextSize(18);
+            viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
             viewBinding.changeMailRl.lineV.setVisibility(View.VISIBLE);
+
+            viewBinding.regionAccountRl.setVisibility(View.GONE);
             //杈撳叆閭
             viewBinding.changeAccountEt.setInputType(InputType.TYPE_CLASS_TEXT);
             viewBinding.changeAccountEt.setHint(R.string.home_login_input_mail);
@@ -410,6 +456,11 @@
             verification_code = viewBinding.changeMailVerificationEt.getText().toString();
         }
         boolean isEnabled = account.length() > 0 && psw1.length() > 0 && psw2.length() > 0 && verification_code.length() > 0;
+        if (isEnabled) {
+            viewBinding.confirmTv.setTextColor(getColor(R.color.text_E6FFFFFF));
+        } else {
+            viewBinding.confirmTv.setTextColor(getColor(R.color.text_66FFFFFF));
+        }
         viewBinding.confirmTv.setEnabled(isEnabled);
     }
 

--
Gitblit v1.8.0