| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233 |
- package eVVM.apk.ui.login;
- import android.content.Intent;
- import android.graphics.Color;
- import android.text.Html;
- import android.text.SpannableStringBuilder;
- import android.text.Spanned;
- import android.text.TextPaint;
- import android.text.TextUtils;
- import android.text.method.LinkMovementMethod;
- import android.text.style.ClickableSpan;
- 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.ImageView;
- import android.widget.TextView;
- import com.hjq.base.BaseDialog;
- import com.hjq.base.BaseDialogFragment;
- import com.hjq.widget.CountdownView;
- import butterknife.BindView;
- import butterknife.OnClick;
- import eVVM.apk.R;
- import eVVM.apk.helper.InputTextHelper;
- import eVVM.apk.mvp.MvpActivity;
- import eVVM.apk.ui.bean.VerificationCodeBean;
- import eVVM.apk.ui.login.register.RegisterContract;
- import eVVM.apk.ui.login.register.RegisterPresenter;
- public class RegisterActivity extends MvpActivity<RegisterPresenter> 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() {
- new InputTextHelper.Builder(this)
- .setMain(registerCbAgree)
- .addView(forgetEtPhone)
- .addView(forgetEtCode)
- .addView(forgetEtPwd)
- .addView(forgetEtPwdAgain)
- .build();
- //设置 button的状态
- getBtnStact();
- //设置用户协议
- toProtocol();
- forgetBtnLogin.setEnabled(false);
- }
- 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() {
- ClickableSpan clickableSpan = new ClickableSpan() {
- @Override
- public void onClick(View widget) {
- //startActivity(new Intent(SpecialLineCompanyListActivity.this, SpecialLineCreateCompanyActivity.class));//响应点击事件
- // agreementView.setVisibility(View.VISIBLE);
- new BaseDialogFragment.Builder(getActivity())
- .setContentView(R.layout.dialog_agree)
- .setAnimStyle(BaseDialog.AnimStyle.SCALE)
- .setText(R.id.agree_msg, Html.fromHtml(getString(R.string.agreement)))
- .setOnClickListener(R.id.agree_canale, new BaseDialog.OnClickListener<ImageView>() {
- @Override
- public void onClick(BaseDialog dialog, ImageView view) {
- dialog.dismiss();
- }
- })
- .addOnShowListener(new BaseDialog.OnShowListener() {
- @Override
- public void onShow(BaseDialog dialog) {
- //toast("Dialog 显示了");
- }
- })
- .addOnCancelListener(new BaseDialog.OnCancelListener() {
- @Override
- public void onCancel(BaseDialog dialog) {
- // toast("Dialog 取消了");
- }
- })
- .addOnDismissListener(new BaseDialog.OnDismissListener() {
- @Override
- public void onDismiss(BaseDialog dialog) {
- //toast("Dialog 销毁了");
- }
- })
- .show();
- }
- @Override
- public void updateDrawState(TextPaint ds) {
- ds.setColor(Color.BLUE);//设置颜色
- ds.setUnderlineText(false);//去掉下划线
- ds.clearShadowLayer();
- }
- };
- SpannableStringBuilder builder = new SpannableStringBuilder(registerTvProtocol.getText().toString());
- builder.setSpan(clickableSpan, 9, 15, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //字体颜色
- registerTvProtocol.setText(builder);
- registerTvProtocol.setHighlightColor(Color.TRANSPARENT);
- registerTvProtocol.setMovementMethod(LinkMovementMethod.getInstance());//必须设置才能响应点击事件
- }
- @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));
- }
- }
|