package eVVM.apk.ui.My; 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.method.LinkMovementMethod; import android.text.style.ClickableSpan; import android.view.View; import android.widget.Button; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import com.hjq.base.BaseDialog; import com.hjq.base.BaseDialogFragment; import com.hjq.dialog.ToastDialog; import butterknife.BindView; import butterknife.OnClick; import eVVM.apk.R; import eVVM.apk.helper.SPUtils; import eVVM.apk.mvp.MvpActivity; import eVVM.apk.ui.My.examine.ExamineContract; import eVVM.apk.ui.My.examine.ExaminePresenter; import eVVM.apk.ui.bean.VerificationCodeBean; import eVVM.apk.ui.login.AuthenticationActivity; public class ExamineActivity extends MvpActivity implements ExamineContract.View { @BindView(R.id.examine_iv) ImageView examineIv; @BindView(R.id.examine_tv) TextView examineTv; @BindView(R.id.examine_cb_agree) CheckBox examineCbAgree; @BindView(R.id.examine_tv_protocol) TextView examineTvProtocol; @BindView(R.id.examine_btn_true) Button examineBtnTrue; @BindView(R.id.examine_ll) LinearLayout examineLl; @BindView(R.id.examine_msg) TextView examineMsg; @BindView(R.id.examine_btn_exit) Button examineBtnExit; private int loginStatusCode; @Override protected int getLayoutId() { return R.layout.activity_examine; } @Override protected int getTitleId() { return 0; } @Override protected void initView() { examineBtnTrue.setEnabled(false); //设置用户协议 toProtocol(); //设置 button的状态 getBtnStact(); Intent intent = getIntent(); loginStatusCode = intent.getIntExtra("LoginStatusCode", 0); switch (loginStatusCode) { case 0: break; case 3: //您的账号正在审核中,请耐心等待 examineIv.setVisibility(View.INVISIBLE); examineLl.setVisibility(View.INVISIBLE); examineTv.setText("您的账号正在审核中,请耐心等待"); examineBtnTrue.setText("退出"); examineBtnTrue.setEnabled(true); break; case 6: //通过 examineIv.setVisibility(View.VISIBLE); examineLl.setVisibility(View.VISIBLE); examineTv.setText("恭喜你审核通过"); examineBtnTrue.setText("确定"); break; case 4: //未通过 examineIv.setVisibility(View.INVISIBLE); examineLl.setVisibility(View.INVISIBLE); examineTv.setText("您的申请未通过审核"); examineBtnExit.setVisibility(View.VISIBLE); examineBtnTrue.setText("退出"); examineMsg.setVisibility(View.VISIBLE); examineBtnTrue.setEnabled(true); String user_id = (String) SPUtils.get("USER_ID", ""); getPresenter().failureReasons(user_id); break; default: break; } } 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() { @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);//去掉下划线 } }; SpannableStringBuilder builder = new SpannableStringBuilder(examineTvProtocol.getText().toString()); builder.setSpan(clickableSpan, 9, 14, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); examineTvProtocol.setText(builder); examineTvProtocol.setMovementMethod(LinkMovementMethod.getInstance());//必须设置才能响应点击事件 } private void getBtnStact() { examineCbAgree.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean b) { if (b) { examineBtnTrue.setEnabled(true); } else { //forgetBtnLogin.setClickable(false); examineBtnTrue.setEnabled(false); } } }); } @Override protected void initData() { } @Override protected ExaminePresenter createPresenter() { return new ExaminePresenter(); } @Override public void agreeError(String msg) { toast(msg); } @Override public void agreeSuccess(VerificationCodeBean data) { new ToastDialog.Builder(this) .setType(ToastDialog.Type.FINISH) .setMessage("完成") .show(); postDelayed(new Runnable() { @Override public void run() { toast("认证成功,请进行登录"); finish(); } }, 500); } @Override public void failureReasonsError(String msg) { toast(msg); } @Override public void failureReasonsSuccess(VerificationCodeBean data) { Object failmsg = data.getData(); examineMsg.setText(failmsg.toString()); } @OnClick({R.id.examine_btn_exit, R.id.examine_btn_true}) public void onViewClicked(View view) { switch (view.getId()) { case R.id.examine_btn_exit: Intent in = new Intent(this, AuthenticationActivity.class); in.putExtra("registerUserId", (String) SPUtils.get("USER_ID", "") + ""); startActivity(in); finish(); break; case R.id.examine_btn_true: if (loginStatusCode == 6) { String user_id = (String) SPUtils.get("USER_ID", ""); getPresenter().agreeProtocol(user_id + ""); } else { finish(); } break; } } }