您的位置:首页 > 其它

<登陆-注册-详情界面-模拟购物车界面-模拟订单界面>-----2.注册

2018-01-19 12:39 549 查看
//接着上一个继续  哈哈    访问数据依然使用retrofit    在上个项目中已经生成,直接调用
//访问接口数据   生成一个注册bean  RegisterBeanRegisterBean//开始网络请求   依然使用mvp//m层
import com.bwei.gaochao.text2.bean.RegisterBean;

public interface RegisterModelListener {
void success(RegisterBean registerBean);
}
public class RegisterModel {
public void getData(String name, String paw, final RegisterModelListener registerModelListener){
Map<String,String> map = new HashMap<>();
map.put("mobile",name);
map.put("password",paw);
RetrofitManager.get("user/reg", map, new BaseObserver<RegisterBean>() {

@Override
public void success(RegisterBean registerBean) {
if (registerModelListener != null){
registerModelListener.success(registerBean);
}
}

@Override
public void failure(int code) {

}

});
}
}
//p层public class RegisterPersenter {
RegisterViewListener registerViewListener;
RegisterModel registerModel;
public RegisterPersenter(RegisterViewListener registerViewListener) {
this.registerViewListener =registerViewListener;
registerModel = new RegisterModel();
}
public void getData(String name,String paw,String paw2,String email){
//判断用户名不能为空
if (TextUtils.isEmpty(name)){
if (registerViewListener != null){
registerViewListener.adminEmpty("用户名不能为空");
return;
}
}
//判断密码不能为空
if (TextUtils.isEmpty(paw)){
if (registerViewListener != null){
registerViewListener.pwdEmpty("密码不能为空");
return;
}
//判断二次输入的密码
if (TextUtils.isEmpty(paw2)){
if (registerViewListener != null){
registerViewListener.confrim("请再次输入密码");
return;
}
if (!paw2.equals(paw)){
if (registerViewListener != null){
registerViewListener.confrim("两次密码不一样");
return;
}
}
}
// boolean email1 = isEmail(email);
// if (!email1){
// if (registerViewListener != null){
// registerViewListener.email("邮箱格式不正确");
// return;
// }
// }
}
//调用m层
registerModel.getData(name, paw, new RegisterModelListener() {
@Override
public void success(RegisterBean registerBean) {
if (registerViewListener!=null){
registerViewListener.success(registerBean.getMsg());
}
}
});
}

//防止内存泄露
public void detach(){
registerViewListener=null;
}
// public boolean isEmail(String email) {
// String str = "^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$";
// Pattern p = Pattern.compile(str);
// Matcher m = p.matcher(email);
//
// return m.matches();
// }
}//v层
public interface RegisterViewListener {
void success(String s);
void failed(String s);
void adminEmpty(String s);
void pwdEmpty(String s);
void email(String s);
void confrim(String s);
}

//RegisterActivity   布局和代码<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.bwei.gaochao.text2.RegisterActivity">
<EditText
android:id="@+id/edi_name"
android:hint="请输入账号"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
4000

<EditText
android:id="@+id/edi_paw"
android:hint="请输入密码"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<EditText
android:id="@+id/edi_paw2"
android:hint="确认输入密码"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<EditText
android:id="@+id/edi_eml"
android:hint="请输入邮箱"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/but_register"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="注册"/>
</LinearLayout>

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.bwei.gaochao.text2.regoster_mvp.persenter.RegisterPersenter;
import com.bwei.gaochao.text2.regoster_mvp.view.RegisterViewListener;

public class RegisterActivity extends AppCompatActivity implements RegisterViewListener {

private EditText mEdiName;
private EditText mEdiPaw;
private EditText mEdiPaw2;
private EditText mEdiEml;
private Button mButRegister;
private RegisterPersenter registerPersenter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
initView();
registerPersenter = new RegisterPersenter(this);
}
private void initView() {
mEdiName = findViewById(R.id.edi_name);
mEdiPaw = findViewById(R.id.edi_paw);
mEdiPaw2 = findViewById(R.id.edi_paw2);
mEdiEml = findViewById(R.id.edi_eml);
//注册按钮
mButRegister = findViewById(R.id.but_register);
mButRegister.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name = mEdiName.getText().toString().trim();
String paw = mEdiPaw.getText().toString().trim();
String paw2 = mEdiPaw2.getText().toString().trim();
String eml = mEdiEml.getText().toString().trim();
registerPersenter.getData(name,paw,paw2,eml);
}
});
}
@Override
public void success(String s) {
if (("注册成功").equals(s)){
Toast.makeText(RegisterActivity.this, s, Toast.LENGTH_SHORT).show();
finish();
}
}

@Override
public void failed(String s) {
Toast.makeText(RegisterActivity.this, s, Toast.LENGTH_SHORT).show();

}

@Override
public void adminEmpty(String s) {
Toast.makeText(RegisterActivity.this, s, Toast.LENGTH_SHORT).show();

}

@Override
public void pwdEmpty(String s) {
Toast.makeText(RegisterActivity.this, s, Toast.LENGTH_SHORT).show();

}

@Override
public void email(String s) {
Toast.makeText(RegisterActivity.this, s, Toast.LENGTH_SHORT).show();

}

@Override
public void confrim(String s) {
Toast.makeText(RegisterActivity.this, s, Toast.LENGTH_SHORT).show();

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: