MVP
来源:互联网 发布:苹果mac版office2016 编辑:程序博客网 时间:2024/06/13 18:26
//MyApp类
package com.bawei.chenkai.week02.app;
import android.app.Application;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
/**
* Created by Administrator on 2017/10/11 0011.
*/
public class MyApp extends Application {
private static MyApp mInstance;
@Override
public void onCreate() {
super.onCreate();
mInstance=this;
ImageLoaderConfiguration defaultcof = ImageLoaderConfiguration.createDefault(getApplicationContext());
ImageLoader.getInstance().init(defaultcof);
}
public static MyApp getInstance(){
return mInstance;
};
}
//model
//IModel
package com.bawei.chenkai.week02.login.model;
import com.bawei.chenkai.week02.login.bean.User;
/**
* author:Created by WangZhiQiang on 2017/12/10.
*/
public interface IModel {
void login(User user, int i);
}
//Model 继承IModel
package com.bawei.chenkai.week02.login.model;
import com.bawei.chenkai.week02.login.bean.Register;
import com.bawei.chenkai.week02.login.bean.User;
import com.bawei.chenkai.week02.login.bean.UserInfo;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import okhttp3.Call;
import utile.GsonObjectCallback;
import utile.OkHttp3Utils;
/**
* author:Created by WangZhiQiang on 2017/12/10.
*/
public class Model implements IModel {
private setOnfinish setOnfinishs;
public interface setOnfinish{
void onfinish(UserInfo userInfo);
void ofinish2(Register register);
}
public Model(setOnfinish setOnfinishs){
this.setOnfinishs=setOnfinishs;
}
@Override
public void login(User user, int i) {
Map<String,String> map=new HashMap<>();
map.put("mobile", user.getName());
map.put("password", user.getPwd());
if(i==0){
OkHttp3Utils.doPost("http://120.27.23.105/user/login", map, new GsonObjectCallback<UserInfo>() {
@Override
public void onUi(UserInfo userInfo) {
if(setOnfinishs!=null){
setOnfinishs.onfinish(userInfo);
}
}
@Override
public void onFailed(Call call, IOException e) {
}
});
}else if(i==1){
OkHttp3Utils.doPost("http://120.27.23.105/user/reg", map, new GsonObjectCallback<Register>() {
@Override
public void onUi(Register register) {
if(setOnfinishs!=null){
setOnfinishs.ofinish2(register);
}
}
@Override
public void onFailed(Call call, IOException e) {
}
});
}
}
}
//Iview
package com.bawei.chenkai.week02.login.view;
/**
* author:Created by WangZhiQiang on 2017/12/10.
*/
public interface Iview {
void loginSucess(String msg);
void loginError(String msg);
void signSucess(String msg);
void signError(String msg);
}
//presenter
//passer重写 Model.setOnfinish
package com.bawei.chenkai.week02.login.presenter;
import com.bawei.chenkai.week02.login.bean.Register;
import com.bawei.chenkai.week02.login.bean.User;
import com.bawei.chenkai.week02.login.bean.UserInfo;
import com.bawei.chenkai.week02.login.model.Model;
import com.bawei.chenkai.week02.login.view.Iview;
/**
* author:Created by WangZhiQiang on 2017/12/10.
*/
public class passer implements Model.setOnfinish {
private Iview iview;
private Model imodel;
public passer(Iview iview) {
this.iview = iview;
this.imodel=new Model(this);
}
public void login(User user, int i) {
imodel.login(user, i);
}
//登录
@Override
public void onfinish(UserInfo userInfo) {
if (userInfo.getCode().equals("0")) {
iview.loginSucess(userInfo.getMsg());
} else {
iview.loginError(userInfo.getMsg());
}
}
//注册
@Override
public void ofinish2(Register register) {
if (register.getCode().equals("0")) {
iview.signSucess(register.getMsg());
} else {
iview.signError(register.getMsg());
}
}
}
//Mainactivity
package com.bawei.chenkai.week02;
import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.Toast;
import com.bawei.chenkai.week02.login.bean.User;
import com.bawei.chenkai.week02.login.presenter.passer;
import com.bawei.chenkai.week02.login.view.Iview;
import com.tencent.connect.UserInfo;
import com.tencent.connect.auth.QQToken;
import com.tencent.connect.common.Constants;
import com.tencent.tauth.IUiListener;
import com.tencent.tauth.Tencent;
import com.tencent.tauth.UiError;
import org.json.JSONException;
import org.json.JSONObject;
import static com.bawei.chenkai.week02.R.id.pwd;
public class MainActivity extends AppCompatActivity implements Iview {
/**
* 输入手机号
*/
private EditText mPhones;
/**
* 输入密码
*/
private EditText mPwd;
/**
* 登入
*/
private RadioButton mLogin;
/**
* 注册
*/
private RadioButton mSign;
private ImageView mQq;
private UserInfo mUserInfo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
private void initView() {
mPhones = (EditText) findViewById(R.id.phones);
mPwd = (EditText) findViewById(pwd);
mLogin = (RadioButton) findViewById(R.id.login);
mSign = (RadioButton) findViewById(R.id.sign);
mLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (TextUtils.isEmpty(mPhones.getText().toString()) || TextUtils.isEmpty(mPwd.getText().toString())) {
Toast.makeText(MainActivity.this, "输入项不能为空", Toast.LENGTH_SHORT).show();
return;
} else {
new passer(MainActivity.this).login(new User(mPhones.getText().toString(), mPwd.getText().toString()), 0);
}
}
});
mSign.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (TextUtils.isEmpty(mPhones.getText().toString()) || TextUtils.isEmpty(mPwd.getText().toString())) {
Toast.makeText(MainActivity.this, "输入项不能为空", Toast.LENGTH_SHORT).show();
return;
} else {
new passer(MainActivity.this).login(new User(mPhones.getText().toString(), mPwd.getText().toString()), 1);
}
}
});
}
@Override
public void loginSucess(String msg) {
Toast.makeText(this, msg + "、欢迎使用☺", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(MainActivity.this, ListActivity.class);
startActivity(intent);
finish();
}
@Override
public void loginError(String msg) {
Toast.makeText(this, msg, Toast.LENGTH_SHORT).show();
}
@Override
public void signSucess(String msg) {
Toast.makeText(this, msg, Toast.LENGTH_SHORT).show();
}
@Override
public void signError(String msg) {
Toast.makeText(this, msg, Toast.LENGTH_SHORT).show();
}
}
- MVP
- MVP
- MVP
- MVP
- MVP
- MVP
- MVP
- MVP
- mvp
- MVP
- MVP
- mvp
- MVP
- MVP
- MVP
- MVP
- MVP
- MVP
- linux如何安装Tomcat
- 兄弟连学Python(02)———数据类型
- JavaScript正则
- 15-2
- Programming Entity Framework DbContext.pdf 英文原版 免费下载
- MVP
- 如何用命令删除find出来的文件
- 哈尔滨理工大学第七届程序设计竞赛决赛(网络赛-低年级组)
- VSFTP服务搭建及FTP并发的核心理解
- 383. Ransom Note
- 【Scikit-Learn 中文文档】监督学习:从高维观察预测输出变量
- Linux DNS服务器配置
- python_sys_module
- Android把字符串中的数字变为红色