应该这样理解Android MVP
1.MVP的出现就是为了解耦,相信写过MVP的都能感受到它的架构风格代码多,但是耦合性降低了。相比较MVC中Activity又有网络访问,又更新view的简直是强多了。
就目前mvp的几个模块解释一下。
我想直接介绍在开发中怎么去搭建MVP,不想扯M是什么,V,P又是什么,应该干什么。不行还是介绍一下吧。
M->model 只负责数据
V-> view 就是activity了
p->persenter 节目主持人就是主持者了,负责业务逻辑
到这里可以思考个问题,我们面对的不只是LoginActivity,还有注册等等。所以我们需要写一个BaseActivity把所有Activity中的共同特性抽象出来。包括Presenter都需要抽象出来。好的我把代码贴这里。
public abstract class BaseActivity<T> extends AppCompatActivity { protected T mPresenter; //所有activity中都持有自己的Presenter }这个没什么解释的,activity需要持有自己的Presenter,用泛型表示所有的Presenter。
紧接着上BasePresenter,如下:
public abstract class BasePresenter<V>{ protected V view; }这个也没什么可说的,持有view,用泛型表示。
但是别忽略了细节,上面的T是表示的Presenter是继承的BasePresenter。好了修改一下代码如下:
未完,明天继续。