MVP

来源:互联网 发布:软件无线电原理与技术 编辑:程序博客网 时间:2024/06/05 16:07
public class UserBean {    private int id;    private String firstName;    private String lastName;    public UserBean(int id, String firstName, String lastName) {        this.id = id;        this.firstName = firstName;        this.lastName = lastName;    }    public UserBean(String firstName, String lastName) {        this.firstName = firstName;        this.lastName = lastName;    }    public int getId() {        return id;    }    public void setId(int id) {        this.id = id;    }    public String getFirstName() {        return firstName;    }    public void setFirstName(String firstName) {        this.firstName = firstName;    }    public String getLastName() {        return lastName;    }    public void setLastName(String lastName) {        this.lastName = lastName;    }}
public interface UserView {    void setFirstName(String firstName);    void setLastName(String lastName);    int getId();    String getFirstName();    String getLastName();}
public interface IUserModel {    void setFirstName(String firstName);    void setLastName(String LastName);    String getFirstName();    String getLastName();    //根据id获取对象    UserBean load(int id);}
public class UserModel implements IUserModel{    @Override    public void setFirstName(String firstName) {        Log.i("xxx",firstName);    }    @Override    public void setLastName(String LastName) {        Log.i("xxx",LastName);    }    @Override    public String getFirstName() {        return null;    }    @Override    public String getLastName() {        return null;    }    @Override    public UserBean load(int id) {       Log.i("fff",id+"");        return new UserBean("张","三");    }}
public class UserPresenter {    private UserView userView;    private  IUserModel iUserModel;    public UserPresenter(UserView userView) {        this.userView = userView;        iUserModel=new UserModel();    }    //保存数据    public void saveUser(int id,String firstName,String lastName){        UserBean userBean=iUserModel.load(id);        Log.i("sss", "id:" + id + ",firstName:" + firstName + ",lastName:" + lastName);    }    public void find(int id){        UserBean userBean=iUserModel.load(id);        String firstName = userBean.getFirstName();        String lastName = userBean.getLastName();        userView.setFirstName(firstName);        userView.setLastName(lastName);        Log.i("aaa", "id:" + id + ",firstName:" + firstName + ",lastName:" + lastName);    }}
public class MainActivity extends AppCompatActivity implements View.OnClickListener,UserView{    private EditText et_id;    private EditText et_first_name;    private EditText et_last_name;    private Button bt_login;    private Button bt_register;    private UserPresenter userPresenter;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        et_id = (EditText) findViewById(R.id.et_id);        et_first_name = (EditText) findViewById(R.id.et_first_name);        et_last_name = (EditText) findViewById(R.id.et_last_name);        bt_login = (Button) findViewById(R.id.bt_login);        bt_register = (Button) findViewById(R.id.bt_register);       bt_login.setOnClickListener(this);        bt_register.setOnClickListener(this);        userPresenter = new UserPresenter(this);    }    @Override    public void onClick(View view) {      switch (view.getId()){          case R.id.bt_register:              userPresenter.saveUser(getId(),getFirstName(),getLastName());              break;          case R.id.bt_login:              userPresenter.find(getId());              break;      }    }    @Override    public void setFirstName(String firstName) {         et_first_name.setText(firstName);    }    @Override    public void setLastName(String lastName) {et_last_name.setText(lastName);    }    @Override    public int getId() {        return new Integer(et_id.getText().toString());    }    @Override    public String getFirstName() {        return et_first_name.getText().toString();    }    @Override    public String getLastName() {        return et_last_name.getText().toString();    }}

原创粉丝点击