911566f8cbcca080bd3cedff0254f1f28d4a958d.svn-base 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. package eVVM.apk.ui.login;
  2. import android.content.Intent;
  3. import android.graphics.Color;
  4. import android.text.SpannableStringBuilder;
  5. import android.text.Spanned;
  6. import android.text.TextUtils;
  7. import android.text.style.ForegroundColorSpan;
  8. import android.util.Log;
  9. import android.view.View;
  10. import android.widget.Button;
  11. import android.widget.CheckBox;
  12. import android.widget.CompoundButton;
  13. import android.widget.EditText;
  14. import android.widget.TextView;
  15. import com.hjq.widget.CountdownView;
  16. import butterknife.BindView;
  17. import butterknife.OnClick;
  18. import eVVM.apk.R;
  19. import eVVM.apk.common.MyActivity;
  20. import eVVM.apk.mvp.MvpActivity;
  21. import eVVM.apk.ui.bean.VerificationCodeBean;
  22. import eVVM.apk.ui.login.AuthenticationActivity;
  23. import eVVM.apk.ui.login.register.RegisterContract;
  24. import eVVM.apk.ui.login.register.RegisterPresenter;
  25. public class RegisterActivity extends MvpActivity<RegisterPresenter> implements RegisterContract.View {
  26. @BindView(R.id.forget_et_phone)
  27. EditText forgetEtPhone;
  28. @BindView(R.id.cv_password_forget_countdown)
  29. CountdownView cvPasswordForgetCountdown;
  30. @BindView(R.id.forget_et_code)
  31. EditText forgetEtCode;
  32. @BindView(R.id.forget_et_pwd)
  33. EditText forgetEtPwd;
  34. @BindView(R.id.forget_et_pwdAgain)
  35. EditText forgetEtPwdAgain;
  36. @BindView(R.id.forget_btn_login)
  37. Button forgetBtnLogin;
  38. @BindView(R.id.register_cb_agree)
  39. CheckBox registerCbAgree;
  40. @BindView(R.id.register_tv_protocol)
  41. TextView registerTvProtocol;
  42. @Override
  43. protected int getLayoutId() {
  44. return R.layout.activity_register;
  45. }
  46. @Override
  47. protected int getTitleId() {
  48. return R.id.tb_register_title;
  49. }
  50. @Override
  51. protected void initView() {
  52. //设置用户协议
  53. toProtocol();
  54. forgetBtnLogin.setEnabled(false);
  55. //设置 button的状态
  56. getBtnStact();
  57. }
  58. private void getBtnStact() {
  59. registerCbAgree.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
  60. @Override
  61. public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
  62. if (b) {
  63. /*forgetBtnLogin.setClickable(true);
  64. forgetBtnLogin.setEnabled(true);*/
  65. if (TextUtils.isEmpty(forgetEtPhone.getText().toString().trim()) || TextUtils.isEmpty(forgetEtCode.getText().toString().trim())
  66. || TextUtils.isEmpty(forgetEtPwd.getText().toString().trim()) || TextUtils.isEmpty(forgetEtPwdAgain.getText().toString().trim())) {
  67. forgetBtnLogin.setEnabled(false);
  68. } else {
  69. forgetBtnLogin.setEnabled(true);
  70. }
  71. } else {
  72. //forgetBtnLogin.setClickable(false);
  73. forgetBtnLogin.setEnabled(false);
  74. }
  75. }
  76. });
  77. }
  78. private void toProtocol() {
  79. SpannableStringBuilder builder = new SpannableStringBuilder(registerTvProtocol.getText().toString());
  80. ForegroundColorSpan blueSpan = new ForegroundColorSpan(Color.BLUE);
  81. //UnderlineSpan lineSpan = new UnderlineSpan();
  82. // builder.setSpan(lineSpan,8,16, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //下划线
  83. builder.setSpan(blueSpan, 9, 15, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //字体颜色
  84. registerTvProtocol.setText(builder);
  85. }
  86. @Override
  87. protected void initData() {
  88. }
  89. @OnClick({R.id.cv_password_forget_countdown, R.id.forget_btn_login, R.id.register_tv_protocol})
  90. public void onViewClicked(View view) {
  91. switch (view.getId()) {
  92. case R.id.cv_password_forget_countdown:
  93. if (forgetEtPhone.getText().toString().length() != 11) {
  94. // 重置验证码倒计时控件
  95. cvPasswordForgetCountdown.resetState();
  96. toast(getString(R.string.common_phone_input_error));
  97. } else {
  98. getPresenter().getCode(forgetEtPhone.getText().toString().trim(), 1);
  99. }
  100. break;
  101. case R.id.forget_btn_login:
  102. if (TextUtils.isEmpty(forgetEtPhone.getText().toString().trim()) || TextUtils.isEmpty(forgetEtCode.getText().toString().trim())
  103. || TextUtils.isEmpty(forgetEtPwd.getText().toString().trim()) || TextUtils.isEmpty(forgetEtPwdAgain.getText().toString().trim())) {
  104. //forgetBtnLogin.setEnabled(false);
  105. toast("请重新输入");
  106. } else {
  107. if (forgetEtPhone.getText().toString().length() != 11) {
  108. toast(getString(R.string.common_phone_input_error));
  109. } else if (!forgetEtPwd.getText().toString().equals(forgetEtPwdAgain.getText().toString())) {
  110. toast(getString(R.string.register_password_input_error));
  111. } else {
  112. getPresenter().register(forgetEtPhone.getText().toString().trim(),
  113. forgetEtPwd.getText().toString().trim(), forgetEtCode.getText().toString().trim());
  114. }
  115. }
  116. break;
  117. case R.id.register_tv_protocol:
  118. //点击用户协议
  119. break;
  120. }
  121. }
  122. @Override
  123. protected RegisterPresenter createPresenter() {
  124. return new RegisterPresenter();
  125. }
  126. @Override
  127. public void registerError(String msg) {
  128. toast(msg);
  129. }
  130. @Override
  131. public void registerSuccess(VerificationCodeBean data) {
  132. Intent in = new Intent(this, AuthenticationActivity.class);
  133. // int id = Integer.parseInt(String.valueOf(data.getData()));
  134. int id = Double.valueOf(String.valueOf(data.getData())).intValue();
  135. Log.e("Authentication---- ", String.valueOf(data.getData()) + "-----" + id);
  136. in.putExtra("registerUserId", id + "");
  137. startActivity(in);
  138. finish();
  139. }
  140. @Override
  141. public void getCodeError(String msg) {
  142. toast(msg);
  143. }
  144. @Override
  145. public void getCodeSuccess(VerificationCodeBean codeData) {
  146. // 获取验证码
  147. toast(getString(R.string.common_send_code_succeed));
  148. }
  149. }