android、鸿蒙开发--第十一章-->Android下MVP框架

Android 下的MVP框架:

简单说明一下

M(Model):数据来源层,可以是本地读取、网络接口获取数据等。

P(Presenter): 持有层,链接M层与V层。

V(View):界面展示层。

当V层需要某个数据的时候,告诉P层,P层告诉M层,M层拿到数据之后,返回数据给P层,P层返回给V层。

当V层主动断开与P层的联系时候,P层也会告诉M层的清理相关数据或结束相关任务。

我们按登录案例讲讲:

我们先看看V层,即Activity代码:

布局:

我们看看BaseMVPActivity代码

我们再看看MVPCallBack接口的方法:

接下来,我们看看P层的实现:

这里LoginPresenter继承BasePresenter,实现抽象方法返回你要绑定的M层。泛型数据是String类型,这个泛型一定要和你LoginActivity继承BaseMVPActivity中的第二个泛型类型一致。

我们看看BasePresenter代码:

接下来,我们看看M层:

LoginMolde继承BaseModel,实现抽象方法getHttpData(),clear()方法是重写父类方法是释放资源和结束任务时候的回调。 泛型数据是String类型,这个泛型一定要和你LoginActivity继承BaseMVPActivity中的第二个泛型、LoginPresenter继承BasePresenter泛型一致。

接下来,我们看看BaseMode代码:

Fragment中使用MVP,我们看看BaseFragment的封装

代码都很简单,和BaseActivcity相差不大。接下来我们看看BaseMVPFragment代码:

代码与BaseActivity唯一区别,就是onDestroyView()处理释放资源。

小总结:使用这一套MVP框架;很简单的界面,没有数据交互的时候,直接继承BaseActivity即可;如果需要使用MVP,则需要继承BaseMVPActivity,另外需要写一个P层继承Base Presenter,M层继承BaseModel。如果你交互的数据返回类型很多,那么你的泛型数据请使用Any(任意类型),你根据返回的state状态做不同的转化,即可。BaseMVPFragment使用同理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值