wjc
2025-02-14 20119c1e9849ab28add56b977ffbca87e13e1072
2025年02月14日10:46:45

忘记密码追加手机号区号功能
2个文件已修改
106 ■■■■■ 已修改文件
app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/res/layout/activity_change_password.xml 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java
@@ -33,6 +33,9 @@
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;
/**
 * 忘记密码界面
@@ -73,8 +76,13 @@
     */
    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);
        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);
    }
@@ -108,6 +116,14 @@
            }
        });
        //选择手机区号的
        viewBinding.regionAccountRl.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                selectArea();
            }
        });
        //输入手机号或者邮箱
        viewBinding.changeAccountEt.addTextChangedListener(accountTextWatcher);
        //手机号获取验证码
@@ -245,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() {
@@ -266,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) {
@@ -354,6 +385,8 @@
            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);
@@ -383,6 +416,8 @@
            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);
app/src/main/res/layout/activity_change_password.xml
@@ -49,14 +49,73 @@
        app:layout_constraintStart_toEndOf="@+id/change_phone_ic"
        app:layout_constraintTop_toBottomOf="@+id/change_title_tv" />
    <View
        android:id="@+id/interval"
        android:layout_width="match_parent"
        android:layout_height="2.5dp"
        android:layout_marginTop="100dp"
        app:layout_constraintStart_toStartOf="@+id/change_title_tv"
        app:layout_constraintTop_toBottomOf="@+id/change_title_tv" />
    <RelativeLayout
        android:id="@+id/region_account_rl"
        android:layout_width="match_parent"
        android:layout_height="@dimen/dp_60"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/interval">
        <TextView
            android:id="@+id/region_account_tv"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_marginStart="@dimen/dp_20"
            android:layout_marginEnd="@dimen/dp_150"
            android:gravity="center_vertical"
            android:text="@string/home_chinese_mainland"
            android:textColor="@color/text_E6FFFFFF"
            android:textSize="@dimen/text_14" />
        <TextView
            android:id="@+id/region_account_number_tv"
            android:layout_width="@dimen/dp_90"
            android:layout_height="match_parent"
            android:layout_alignParentEnd="true"
            android:layout_centerVertical="true"
            android:layout_marginEnd="@dimen/dp_58"
            android:gravity="center_vertical|end"
            android:text="+86"
            android:textColor="@color/text_E6FFFFFF"
            android:textSize="@dimen/text_14"
            />
        <ImageView
            android:id="@+id/region_account_next_iv"
            android:layout_width="@dimen/dp_20"
            android:layout_height="@dimen/dp_20"
            android:layout_alignParentEnd="true"
            android:layout_centerVertical="true"
            android:layout_marginEnd="@dimen/dp_26"
            android:src="@drawable/spinner" />
        <View
            android:layout_width="match_parent"
            android:layout_height="0.5dp"
            android:layout_alignParentBottom="true"
            android:layout_marginStart="@dimen/dp_20"
            android:layout_marginEnd="@dimen/dp_20"
            android:background="@color/text_1AFFFFFF" />
    </RelativeLayout>
    <RelativeLayout
        android:id="@+id/change_account_rl"
        android:layout_width="match_parent"
        android:layout_height="@dimen/dp_60"
        android:layout_marginTop="102.5dp"
        app:layout_constraintStart_toStartOf="@+id/change_title_tv"
        app:layout_constraintTop_toBottomOf="@+id/change_title_tv">
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/region_account_rl">
        <EditText
            android:id="@+id/change_account_et"