void update();
}
我们在使用的View层继承下列接口即可,但如果有两个Activity,一个需要查询、一个需要修改、一个需要所有功能,那么这个时候如果我们继承这个view接口,肯定会出现View层含有没有使用的接口。当然我们可以将四个接口放在四个view层,但工作量和维护起来并不方便。
一、Android MVVM介绍
个人认为,MVVM的出现,并不是解决上述MVP的缺点,无论是MVP、MVC或是MVVM都有各自的缺点和优点,在开发中选择合适的开发模式,才能有助于开发工作。
MVVM并不是分为了四层,而是将MVP中的P层变为了ViewModel层。还是以查询数据为例,如果我们要将查询出来的数据显示在控件上,我们要定义view层的如下方法
void setData(String data);
在Activity的接口回调中进行setText,但是如果显示的数据特别多,就要set多次,MVVM的最佳使用方式是MVP+DataBinding,MVVM可以实现数据直接和View层的控件绑定,和监听事件的绑定。接下来我们开始介绍MVVM的使用步骤。
二、DataBinding的使用步骤
2.1 引入Data Binding函数库
在build .gradle中使用如下设置支持dataBinding:
dataBinding{
enabled = true
}
2.2 新建一个User实体类
为了模拟数据我们新建一个User类如下
public class User {
private String UserName;
private String UserSex;
public String getUserName() {
return UserName;
}
public void setUserName(String userName) {
UserName = userName;
}
public String getUserSex() {
return UserSex;
}
public void setUserSex(String userSex) {
UserSex = userSex;
}
public User(St