package com.way.chat.activity; import android.app.AlertDialog; import android.app.Dialog; import android.content.Context; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import com.way.chat.common.bean.User; import com.way.chat.common.tran.bean.TranObject; import com.way.chat.common.tran.bean.TranObjectType; import com.way.client.Client; import com.way.client.ClientOutputThread; import com.way.util.DialogHelp; import com.way.util.Encode; public class RegisterView extends SuperView implements OnClickListener { private Button mBtnRegister; private Button mRegBack; private EditText mEmailEt, mNameEt, mPasswdEt, mPasswdEt2; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.register); initView(); } public void initView() { mBtnRegister = (Button) findViewById(R.id.register_btn); mRegBack = (Button) findViewById(R.id.reg_back_btn); mBtnRegister.setOnClickListener(this); mRegBack.setOnClickListener(this); mEmailEt = (EditText) findViewById(R.id.reg_email); mNameEt = (EditText) findViewById(R.id.reg_name); mPasswdEt = (EditText) findViewById(R.id.reg_password); mPasswdEt2 = (EditText) findViewById(R.id.reg_password2); } private Dialog mDialog = null; private void showRequestDialog() { if (mDialog != null) { mDialog.dismiss(); mDialog = null; } mDialog = DialogHelp.creatRequestDialog(this, "正在注册中..."); mDialog.show(); } @Override public void onBackPressed() {// 捕获返回键 // TODO Auto-generated method stub toast(RegisterView.this); } // @Override // public boolean onKeyDown(int keyCode, KeyEvent event) { // switch (keyCode) { // case KeyEvent.KEYCODE_BACK: // toast(RegisterActivity.this); // break; // // default: // break; // } // return true; // } public void onClick(View v) { // TODO Auto-generated method stub switch (v.getId()) { case R.id.register_btn: // showRequestDialog(); estimate(); break; case R.id.reg_back_btn: toast(RegisterView.this); break; default: break; } } private void toast(Context context) { new AlertDialog.Builder(context).setTitle("QQ注册") .setMessage("确定要退出本次注册吗?") .setPositiveButton("确定", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { finish(); } }).setNegativeButton("取消", null).create().show(); } private void estimate() { String email = mEmailEt.getText().toString(); String name = mNameEt.getText().toString(); String passwd = mPasswdEt.getText().toString(); String passwd2 = mPasswdEt2.getText().toString(); if (email.equals("") || name.equals("") || passwd.equals("") || passwd2.equals("")) { DialogHelp.ToastDialog(RegisterView.this, "QQ注册", "带*项不能为空"); } else { if (passwd.equals(passwd2)) { showRequestDialog(); // 提交注册信息 if (GetMsgService.isStart) {// 如果已连接上服务器 Client client = GetMsgService.client; ClientOutputThread out = client.getClientOutputThread(); TranObject<User> o = new TranObject<User>( TranObjectType.REGISTER); User u = new User(); u.setEmail(email); u.setName(name); u.setPassword(Encode.getEncode("MD5", passwd)); o.setObject(u); out.setMsg(o); } else { if (mDialog.isShowing()) mDialog.dismiss(); DialogHelp.ToastDialog(this, "QQ注册", "服务器未响应!"); } } else { DialogHelp.ToastDialog(RegisterView.this, "QQ注册", "两次输入的密码不同"); } } } @SuppressWarnings("rawtypes") @Override public void getMessage(TranObject msg) { // TODO Auto-generated method stub switch (msg.getType()) { case REGISTER: User u = (User) msg.getObject(); int id = u.getId(); if (id > 0) { if (mDialog != null) { mDialog.dismiss(); mDialog = null; } DialogHelp.ToastDialog(RegisterView.this, "QQ注册", "请牢记您的登录QQ:" + id); } else { if (mDialog != null) { mDialog.dismiss(); mDialog = null; } DialogHelp.ToastDialog(RegisterView.this, "QQ注册", "对不起!注册失败!"); } break; default: break; } } }