package com.partynetwork.iparty.login; import com.partynetwork.dataprovider.util.StringUtil; import com.partynetwork.iparty.R; import com.partynetwork.iparty.app.api.URLs; import com.partynetwork.iparty.helper.IntentHelper; import com.partynetwork.iparty.info.RegisterUserInfo; import com.baidu.mobstat.StatService; import com.lidroid.xutils.ViewUtils; import com.lidroid.xutils.view.annotation.ViewInject; import com.lidroid.xutils.view.annotation.event.OnClick; import eu.inmite.android.lib.dialogs.ISimpleDialogListener; import eu.inmite.android.lib.dialogs.SimpleDialogFragment; import android.content.Intent; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.view.View; import android.view.Window; import android.widget.EditText; import android.widget.TextView; /** * 注册界面1 * * @author sys * @version 1.0 * @since 2013.09.27 */ public class RegisterOneActivity extends FragmentActivity implements ISimpleDialogListener { /* 控件声明注册 */ // 返回按钮 @ViewInject(R.id.head_left_tv) private TextView left_tv; // 注册的类别标题 @ViewInject(R.id.menu_head_middle_text) private TextView title; // 下一步按钮 @ViewInject(R.id.head_right_tv) private TextView right_tv; // 输入框的类别图标 @ViewInject(R.id.register_type_tv) private TextView type_tv; // 内容输入框 @ViewInject(R.id.register_type_et) private EditText type_et; // 类别说明文字 @ViewInject(R.id.register_explanation_tv) private TextView explanation_tv; // 是否同意条款选择文本 @ViewInject(R.id.register_clause_check_tv) private TextView clause_check; // 查看条款文本按钮 @ViewInject(R.id.register_phone_number_tv) private TextView clause; private String typeContent; // 传递的用户 private RegisterUserInfo user; private boolean isGreet = true; // 注册类别 private int registerType; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTheme(R.style.DefaultLightTheme); this.requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.register_one); ViewUtils.inject(this); init(); } /** * 所有数据初始化 */ private void init() { user = new RegisterUserInfo(); initType(); } /** * 初始化注册类别数据 */ private void initType() { registerType = getIntent().getIntExtra("registerType", 0); if (registerType == 0) { title.setText("手机号"); type_tv.setText("+86"); Drawable drawable = getResources().getDrawable( R.drawable.register_phone); drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight()); type_tv.setCompoundDrawables(drawable, null, null, null); type_et.setHint("输入手机号码"); explanation_tv.setText("输入你的手机号码,免费注册iParty,iParty不会在任何地方泄露你的号码。"); } else if (registerType == 1) { title.setText("邮箱"); type_tv.setText(""); Drawable drawable = getResources().getDrawable( R.drawable.register_email); drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight()); type_tv.setCompoundDrawables(drawable, null, null, null); type_et.setHint("输入邮箱"); explanation_tv.setText("输入你的邮箱,免费注册iParty。"); } else if (registerType == 2) { title.setText("重设密码"); type_tv.setText("+86"); Drawable drawable = getResources().getDrawable( R.drawable.register_phone); drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight()); type_tv.setCompoundDrawables(drawable, null, null, null); type_et.setHint("输入手机号码"); explanation_tv.setText("输入与iparty账号绑定的手机号。"); clause_check.setVisibility(View.GONE); clause.setVisibility(View.GONE); } else if (registerType == 3) { title.setText("重设密码"); type_tv.setText(""); Drawable drawable = getResources().getDrawable( R.drawable.register_email); drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight()); type_tv.setCompoundDrawables(drawable, null, null, null); type_et.setHint("输入邮箱"); explanation_tv.setText("输入与iparty账号绑定的邮箱。"); clause_check.setVisibility(View.GONE); clause.setVisibility(View.GONE); } } /** * 事件监听 * * @param v */ @OnClick({ R.id.head_left_tv, R.id.head_right_tv, R.id.register_clause_check_tv, R.id.register_phone_number_tv }) public void btnClick(View v) { switch (v.getId()) { case R.id.head_left_tv: finish(); break; case R.id.register_clause_check_tv: if (isGreet) { Drawable drawable = getResources().getDrawable( R.drawable.register_clause_unchecked); // / 这一步必须要做,否则不会显示. drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight()); clause_check.setCompoundDrawables(drawable, null, null, null); isGreet = false; } else { Drawable drawable = getResources().getDrawable( R.drawable.register_clause_checked); // / 这一步必须要做,否则不会显示. drawable.setBounds(0, 0, drawable.getMinimumWidth(), drawable.getMinimumHeight()); clause_check.setCompoundDrawables(drawable, null, null, null); isGreet = true; } break; case R.id.head_right_tv: if (isGreet) { typeContent = type_et.getText().toString(); if (registerType == 0 || registerType == 2) { if (StringUtil.filterPhoneNumber(typeContent)) { user.setUserPhone(typeContent); user.setRegisterType(registerType); showDialog(); } else { SimpleDialogFragment .createBuilder(this, getSupportFragmentManager()) .setMessage("电话号码有误!") .setNegativeButtonText("确定").show(); } } else if (registerType == 1 || registerType == 3) { if (StringUtil.filterEmail(typeContent)) { user.setUserEmail(typeContent); user.setRegisterType(registerType); showDialog(); } else { SimpleDialogFragment .createBuilder(this, getSupportFragmentManager()) .setMessage("邮箱有误!") .setNegativeButtonText("确定").show(); } } } else { SimpleDialogFragment .createBuilder(this, getSupportFragmentManager()) .setMessage("请认真阅读使用条款,并同意条款!") .setNegativeButtonText("确定").show(); } break; case R.id.register_phone_number_tv: IntentHelper.goWebActivity(this, "使用条款", URLs.URL_API_HOST + "/Ihelp/service/"); break; default: break; } } /** * 显示弹出菜单 */ private void showDialog() { String message = ""; if (registerType == 0 || registerType == 2) { message = "我们将发送验证短信到这个号码:\n" + typeContent; } else if (registerType == 1 || registerType == 3) { message = "我们将发送验证码到这个邮箱:\n" + typeContent; } SimpleDialogFragment.createBuilder(this, getSupportFragmentManager()) .setMessage(message).setPositiveButtonText("取消") .setNegativeButtonText("确定").setRequestCode(4).show(); } @Override protected void onResume() { StatService.onResume(this); super.onResume(); } @Override public void onPause() { StatService.onPause(this); super.onResume(); } @Override public void onPositiveButtonClicked(int requestCode) { } @Override public void onNegativeButtonClicked(int requestCode) { if (requestCode == 4) { // 跳到下一个界面 Intent intent = new Intent(RegisterOneActivity.this, RegisterTwoActivity.class); intent.putExtra("user", user); intent.putExtra("registerType", registerType); startActivity(intent); return; } } }