简介
MVP的实现其实就是对接口的一个理解,Google也有基于该模式的样例 Google样例 但是你会发现Google只是一个简单思路的介绍而已,对于具体的实现并没有给出详细的介绍
实现
MVP是由 MVC的基础上发展而来的,具体的实现步骤如下:
View
直接上代码吧!
- 首先是接口IView的定义
public interface IView<T extends IPresenter> {} ,其实这个就是跟MVP中定义的View是一样的,没必要过多的介绍,毕竟连MVP都不知道,怎么能搭建MVVM呢
- 其次BaseActivity继承接口IView
public abstract class BaseActivity<T extends IPresenter> extends FragmentActivity implements IView
Model
model比较简单,还是MVC中的Model,这里就没有必要贴代码了
Presenter
Presenter才是难点也是重点,实现步骤如下:
- 接口IPresenter定义
public interface IPresenter<T extends IView>
- 抽象BasePresenter的实现
public abstract class BasePresenter<T extends IView> implements IPresenter
- 继承BasePresenter的具体实现
public class BreakFastAddrPresenter extends BasePresenter<BreakFastAddrContract.BreakFastAddrView> implements
BreakFastAddrContract.BreakFastAddrPresenter
以上就是实现MVP的步骤,代码可以可以参考github