---------------------P package com.bawei.gaoying.presenter; import android.text.TextUtils; import com.bawei.gaoying.bean.GsonBean; import com.bawei.gaoying.mode.LoginModle; import com.bawei.gaoying.view.LoginView; public class LoginPresenter implements LoginModle.ILogin{ private LoginView loginView; private LoginModle loginModle; public LoginPresenter(LoginView loginView) { this.loginView=loginView; loginModle=new LoginModle(); loginModle.setiLogin(this); } public void login(String mobile,String pass) { if (TextUtils.isEmpty(mobile)) { loginView.nameError("用户名不能为空"); return; } if (TextUtils.isEmpty(pass)) { loginView.passError("密码不能为空"); return; } loginModle.login(mobile,pass); } @Override public void loginSuccess(String code, String msg,GsonBean.DataBean dataBean) { loginView.loginSuccess(code,msg,dataBean); } @Override public void loginFail(String code, String msg) { loginView.loginFail(code,msg); } } ---------------------Vpackage com.bawei.gaoying.view; import com.bawei.gaoying.bean.GsonBean; public interface LoginView { public void nameError(String msg); //名字错误 public void passError(String msg); //密码错误 public void loginSuccess(String code, String msg,GsonBean.DataBean dataBean); //登陆成功 public void loginFail(String code, String msg); //登陆失败 }
----------------Mpackage com.bawei.gaoying.mode; import com.bawei.gaoying.bean.GsonBean; import com.bawei.gaoying.common.Api; import com.example.utils.OkHttpManager; import com.google.gson.Gson; import java.io.IOException; import okhttp3.Call; import okhttp3.Callback; import okhttp3.FormBody; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; public class LoginModle { public void login(String mobile,String pass){ //提交服务器 OkHttpClient okHttpClient=new OkHttpClient(); FormBody.Builder formBody=new FormBody.Builder(); formBody.add("mobile",mobile); formBody.add("password",pass); FormBody body=formBody.build(); Request request=new Request.Builder().post(body).url(Api.LOGIN_API).build(); okHttpClient.newCall(request).enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) { } @Override public void onResponse(Call call, Response response) throws IOException { if (response!=null&&response.isSuccessful()){ String result = response.body().string(); System.out.println("result======="+result); Gson gson=new Gson(); GsonBean bean = gson.fromJson(result, GsonBean.class); String code = bean.code; String msg = bean.msg; if(code.equals("0")) { iLogin.loginSuccess(code,msg,bean.data); } else { iLogin.loginFail(code,msg); } } } }); } private ILogin iLogin; /** * 对外暴露的回调接口 * @param iLogin */ public void setiLogin(ILogin iLogin) { this.iLogin = iLogin; } public interface ILogin { public void loginSuccess(String code, String msg,GsonBean.DataBean dataBean); public void loginFail(String code, String msg); } }
MVP
最新推荐文章于 2018-12-07 14:57:26 发布