package eVVM.apk.ui.login; import android.content.Intent; import android.graphics.Color; import android.text.SpannableStringBuilder; import android.text.Spanned; import android.text.TextUtils; import android.text.style.ForegroundColorSpan; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.EditText; import android.widget.TextView; import com.hjq.widget.CountdownView; import butterknife.BindView; import butterknife.OnClick; import eVVM.apk.R; import eVVM.apk.common.MyActivity; import eVVM.apk.mvp.MvpActivity; import eVVM.apk.ui.bean.VerificationCodeBean; import eVVM.apk.ui.login.AuthenticationActivity; import eVVM.apk.ui.login.register.RegisterContract; import eVVM.apk.ui.login.register.RegisterPresenter; public class RegisterActivity extends MvpActivity implements RegisterContract.View { @BindView(R.id.forget_et_phone) EditText forgetEtPhone; @BindView(R.id.cv_password_forget_countdown) CountdownView cvPasswordForgetCountdown; @BindView(R.id.forget_et_code) EditText forgetEtCode; @BindView(R.id.forget_et_pwd) EditText forgetEtPwd; @BindView(R.id.forget_et_pwdAgain) EditText forgetEtPwdAgain; @BindView(R.id.forget_btn_login) Button forgetBtnLogin; @BindView(R.id.register_cb_agree) CheckBox registerCbAgree; @BindView(R.id.register_tv_protocol) TextView registerTvProtocol; @Override protected int getLayoutId() { return R.layout.activity_register; } @Override protected int getTitleId() { return R.id.tb_register_title; } @Override protected void initView() { //设置用户协议 toProtocol(); forgetBtnLogin.setEnabled(false); //设置 button的状态 getBtnStact(); } private void getBtnStact() { registerCbAgree.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean b) { if (b) { /*forgetBtnLogin.setClickable(true); forgetBtnLogin.setEnabled(true);*/ if (TextUtils.isEmpty(forgetEtPhone.getText().toString().trim()) || TextUtils.isEmpty(forgetEtCode.getText().toString().trim()) || TextUtils.isEmpty(forgetEtPwd.getText().toString().trim()) || TextUtils.isEmpty(forgetEtPwdAgain.getText().toString().trim())) { forgetBtnLogin.setEnabled(false); } else { forgetBtnLogin.setEnabled(true); } } else { //forgetBtnLogin.setClickable(false); forgetBtnLogin.setEnabled(false); } } }); } private void toProtocol() { SpannableStringBuilder builder = new SpannableStringBuilder(registerTvProtocol.getText().toString()); ForegroundColorSpan blueSpan = new ForegroundColorSpan(Color.BLUE); //UnderlineSpan lineSpan = new UnderlineSpan(); // builder.setSpan(lineSpan,8,16, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //下划线 builder.setSpan(blueSpan, 9, 15, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //字体颜色 registerTvProtocol.setText(builder); } @Override protected void initData() { } @OnClick({R.id.cv_password_forget_countdown, R.id.forget_btn_login, R.id.register_tv_protocol}) public void onViewClicked(View view) { switch (view.getId()) { case R.id.cv_password_forget_countdown: if (forgetEtPhone.getText().toString().length() != 11) { // 重置验证码倒计时控件 cvPasswordForgetCountdown.resetState(); toast(getString(R.string.common_phone_input_error)); } else { getPresenter().getCode(forgetEtPhone.getText().toString().trim(), 1); } break; case R.id.forget_btn_login: if (TextUtils.isEmpty(forgetEtPhone.getText().toString().trim()) || TextUtils.isEmpty(forgetEtCode.getText().toString().trim()) || TextUtils.isEmpty(forgetEtPwd.getText().toString().trim()) || TextUtils.isEmpty(forgetEtPwdAgain.getText().toString().trim())) { //forgetBtnLogin.setEnabled(false); toast("请重新输入"); } else { if (forgetEtPhone.getText().toString().length() != 11) { toast(getString(R.string.common_phone_input_error)); } else if (!forgetEtPwd.getText().toString().equals(forgetEtPwdAgain.getText().toString())) { toast(getString(R.string.register_password_input_error)); } else { getPresenter().register(forgetEtPhone.getText().toString().trim(), forgetEtPwd.getText().toString().trim(), forgetEtCode.getText().toString().trim()); } } break; case R.id.register_tv_protocol: //点击用户协议 break; } } @Override protected RegisterPresenter createPresenter() { return new RegisterPresenter(); } @Override public void registerError(String msg) { toast(msg); } @Override public void registerSuccess(VerificationCodeBean data) { Intent in = new Intent(this, AuthenticationActivity.class); // int id = Integer.parseInt(String.valueOf(data.getData())); int id = Double.valueOf(String.valueOf(data.getData())).intValue(); Log.e("Authentication---- ", String.valueOf(data.getData()) + "-----" + id); in.putExtra("registerUserId", id + ""); startActivity(in); finish(); } @Override public void getCodeError(String msg) { toast(msg); } @Override public void getCodeSuccess(VerificationCodeBean codeData) { // 获取验证码 toast(getString(R.string.common_send_code_succeed)); } }