From 3ccff7173fb73322f7785d8eaedc90a1b5d8765d Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期二, 10 十二月 2024 22:44:03 +0800 Subject: [PATCH] 2024年12月10日22:43:59 --- app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java | 257 ++++++++++++++++++++++++++++++--------------------- 1 files changed, 151 insertions(+), 106 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 09c300c..7ed0190 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,12 +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; /** - * 淇敼璐﹀彿鐣岄潰 + * 蹇樿瀵嗙爜鐣岄潰 */ public class ChangePassword extends CustomBaseActivity { ActivityChangePasswordBinding viewBinding; @@ -54,6 +60,8 @@ @Override public void onBindView(Bundle savedInstanceState) { + setStatusBarTranslucent(); + getWindow().setNavigationBarColor(getColor(R.color.text_00000000)); //鍒濆鍖� initView(); //鍒濆鍖栫晫闈㈢洃鍚櫒 @@ -65,7 +73,10 @@ */ private void initView() { switchPhoneOrMailView(); + HdlCommonLogic.getInstance().setSpan(viewBinding.changePhoneVerificationTv, viewBinding.changePhoneVerificationTv.getText().toString(), true,null); + HdlCommonLogic.getInstance().setSpan(viewBinding.changeMailVerificationTv, viewBinding.changeMailVerificationTv.getText().toString(), true,null); } + /** * 璁剧疆鐩戝惉浜嬩欢 @@ -98,22 +109,7 @@ } }); //杈撳叆鎵嬫満鍙锋垨鑰呴偖绠� - viewBinding.changeAccountEt.addTextChangedListener(new TextWatcher() { - @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { - - } - - @Override - public void onTextChanged(CharSequence s, int start, int before, int count) { - isCompleteEnabled(); - } - - @Override - public void afterTextChanged(Editable s) { - - } - }); + viewBinding.changeAccountEt.addTextChangedListener(accountTextWatcher); //鎵嬫満鍙疯幏鍙栭獙璇佺爜 viewBinding.changePhoneVerificationTv.setOnClickListener(new View.OnClickListener() { @Override @@ -123,22 +119,7 @@ } }); //杈撳叆鎵嬫満楠岃瘉鐮� - viewBinding.changePhoneVerificationEt.addTextChangedListener(new TextWatcher() { - @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { - - } - - @Override - public void onTextChanged(CharSequence s, int start, int before, int count) { - isCompleteEnabled(); - } - - @Override - public void afterTextChanged(Editable s) { - - } - }); + viewBinding.changePhoneVerificationEt.addTextChangedListener(phoneVerificationTextWatcher); //閭鑾峰彇楠岃瘉鐮� viewBinding.changeMailVerificationTv.setOnClickListener(new View.OnClickListener() { @Override @@ -148,39 +129,9 @@ } }); //杈撳叆閭楠岃瘉鐮� - viewBinding.changeMailVerificationEt.addTextChangedListener(new TextWatcher() { - @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { - - } - - @Override - public void onTextChanged(CharSequence s, int start, int before, int count) { - isCompleteEnabled(); - } - - @Override - public void afterTextChanged(Editable s) { - - } - }); + viewBinding.changeMailVerificationEt.addTextChangedListener(MailVerificationTextWatcher); //杈撳叆瀵嗙爜 - viewBinding.changePswEt.addTextChangedListener(new TextWatcher() { - @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { - - } - - @Override - public void onTextChanged(CharSequence s, int start, int before, int count) { - isCompleteEnabled(); - } - - @Override - public void afterTextChanged(Editable s) { - - } - }); + viewBinding.changePswEt.addTextChangedListener(changePswTextWatcher); //瀵嗙爜鏄剧ず鎴栬�呴殣钘� viewBinding.changePswHideIv.setOnClickListener(new View.OnClickListener() { @Override @@ -202,22 +153,7 @@ } }); //杈撳叆纭瀵嗙爜 - viewBinding.changeConfirmPswEt.addTextChangedListener(new TextWatcher() { - @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { - - } - - @Override - public void onTextChanged(CharSequence s, int start, int before, int count) { - isCompleteEnabled(); - } - - @Override - public void afterTextChanged(Editable s) { - - } - }); + viewBinding.changeConfirmPswEt.addTextChangedListener(changeConfirmPswTextWatcher); //纭瀵嗙爜鏄剧ず鎴栬�呴殣钘� viewBinding.changeConfirmPswHideIv.setOnClickListener(new View.OnClickListener() { @Override @@ -253,7 +189,7 @@ verification_code = viewBinding.changeMailVerificationEt.getText().toString(); } if (UserConfigManage.getInstance().isBAccount()) { - HdlAccountLogic.getInstance().changeBPassword(isPhoneType, account, psw, verification_code, new CloudCallBeak<Boolean>() { + HdlAccountLogic.getInstance().changePassword_B(isPhoneType, account, psw, verification_code, new CloudCallBeak<Boolean>() { @Override public void onSuccess(Boolean obj) { HdlThreadLogic.runMainThread(new Runnable() { @@ -274,11 +210,11 @@ @Override public void onFailure(HDLException e) { - + HdlThreadLogic.toast(_mActivity, e); } }); } else { - HdlAccountLogic.getInstance().changeCPassword(isPhoneType, account, psw, verification_code, new CloudCallBeak<Boolean>() { + HdlAccountLogic.getInstance().changePassword_C(isPhoneType, account, psw, verification_code, new CloudCallBeak<Boolean>() { @Override public void onSuccess(Boolean obj) { HdlThreadLogic.runMainThread(new Runnable() { @@ -299,7 +235,7 @@ @Override public void onFailure(HDLException e) { - + HdlThreadLogic.toast(_mActivity, e); } }); } @@ -342,14 +278,14 @@ @Override public void onFailure(HDLException e) { - + HdlThreadLogic.toast(_mActivity, e); } }); } @Override public void onFailure(HDLException e) { - + HdlThreadLogic.toast(_mActivity, e); // hideLoading(); } }); @@ -364,7 +300,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); } @@ -372,7 +308,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); @@ -388,7 +324,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); } @@ -396,7 +332,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); } @@ -408,19 +344,19 @@ private void switchPhoneOrMailView() { if (isPhoneType) { //鎵嬫満鍙� - viewBinding.changePhoneIc.accountTitleTv.setText(R.string.home_login_鎵嬫満鍙�); - viewBinding.changePhoneIc.accountTitleTv.setTextSize(20); - viewBinding.changePhoneIc.accountTitleTv.setTextColor(getResources().getColor(R.color.text_90000000)); - viewBinding.changePhoneIc.lineV.setVisibility(View.VISIBLE); + viewBinding.changePhoneIc.accountTitleTv.setText(R.string.home_login_phone); + viewBinding.changePhoneIc.accountTitleTv.setTextSize(18); + viewBinding.changePhoneIc.accountTitleTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF)); + viewBinding.changePhoneIc.lineV.setVisibility(View.GONE); - viewBinding.changeMailRl.accountTitleTv.setText(R.string.home_login_閭); - viewBinding.changeMailRl.accountTitleTv.setTextSize(16); - viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_40000000)); + viewBinding.changeMailRl.accountTitleTv.setText(R.string.home_login_email); + viewBinding.changeMailRl.accountTitleTv.setTextSize(14); + viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_66FFFFFF)); viewBinding.changeMailRl.lineV.setVisibility(View.GONE); //杈撳叆鎵嬫満鍙� viewBinding.changeAccountEt.setInputType(InputType.TYPE_CLASS_NUMBER); - viewBinding.changeAccountEt.setHint(R.string.home_login_璇疯緭鍏ユ墜鏈哄彿); + viewBinding.changeAccountEt.setHint(R.string.home_login_input_phone); //鏄剧ず鎵嬫満鍙烽獙璇佺爜锛岄殣钘忛偖绠遍獙璇佺爜, viewBinding.changePhoneVerificationCodeRl.setVisibility(View.VISIBLE); viewBinding.changeMailVerificationCodeRl.setVisibility(View.GONE); @@ -438,15 +374,15 @@ } else { //閭 - viewBinding.changePhoneIc.accountTitleTv.setText(R.string.home_login_鎵嬫満鍙�); - viewBinding.changePhoneIc.accountTitleTv.setTextSize(16); - viewBinding.changePhoneIc.accountTitleTv.setTextColor(getResources().getColor(R.color.text_40000000)); + viewBinding.changePhoneIc.accountTitleTv.setText(R.string.home_login_phone); + 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_閭); - viewBinding.changeMailRl.accountTitleTv.setTextSize(20); - viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_90000000)); - viewBinding.changeMailRl.lineV.setVisibility(View.VISIBLE); + viewBinding.changeMailRl.accountTitleTv.setText(R.string.home_login_email); + viewBinding.changeMailRl.accountTitleTv.setTextSize(18); + viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF)); + viewBinding.changeMailRl.lineV.setVisibility(View.GONE); //杈撳叆閭 viewBinding.changeAccountEt.setInputType(InputType.TYPE_CLASS_TEXT); viewBinding.changeAccountEt.setHint(R.string.home_login_input_mail); @@ -485,6 +421,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); } @@ -522,5 +463,109 @@ mailCountDownTimer.cancel(); mailCountDownTimer = null; } + viewBinding.changeAccountEt.removeTextChangedListener(accountTextWatcher); + viewBinding.changePhoneVerificationEt.removeTextChangedListener(phoneVerificationTextWatcher); + viewBinding.changeMailVerificationEt.removeTextChangedListener(MailVerificationTextWatcher); + viewBinding.changePswEt.removeTextChangedListener(changePswTextWatcher); + viewBinding.changeConfirmPswEt.removeTextChangedListener(changeConfirmPswTextWatcher); } + + + /** + * 杈撳叆鎵嬫満鍙锋垨鑰呴偖绠� + */ + private final TextWatcher accountTextWatcher = new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + isCompleteEnabled(); + } + + @Override + public void afterTextChanged(Editable s) { + + } + }; + /** + * 杈撳叆鎵嬫満楠岃瘉鐮� + */ + private final TextWatcher phoneVerificationTextWatcher = new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + isCompleteEnabled(); + } + + @Override + public void afterTextChanged(Editable s) { + + } + }; + + /** + * 閭鑾峰彇楠岃瘉鐮� + */ + private final TextWatcher MailVerificationTextWatcher = new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + isCompleteEnabled(); + } + + @Override + public void afterTextChanged(Editable s) { + + } + }; + + /** + * 杈撳叆瀵嗙爜 + */ + private final TextWatcher changePswTextWatcher = new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + isCompleteEnabled(); + } + + @Override + public void afterTextChanged(Editable s) { + + } + }; + /** + * 杈撳叆纭瀵嗙爜 + */ + private final TextWatcher changeConfirmPswTextWatcher = new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + isCompleteEnabled(); + } + + @Override + public void afterTextChanged(Editable s) { + + } + }; } \ No newline at end of file -- Gitblit v1.8.0