Android MVP 模式的使用
2016-04-26 15:52
302 查看
什么是MVP
MVP是 模型(Model)、视图(View)、主持人(Presenter)的缩写,分别代表项目中3个不同的模块。模型(Model):负责处理数据的加载或者存储,比如从网络或本地数据库获取数据等;
视图(View):负责界面数据的展示,与用户进行交互;
主持人(Presenter):相当于协调者,是模型与视图之间的桥梁,将模型与视图分离开来。
如下图所示,
View与Model并不直接交互,而是使用Presenter作为View与Model之间的桥梁。
其中Presenter中同时持有View层以及Model层的Interface的引用,而View层持有Presenter层Interface的引用。当View层某个界面需要展示某些数据的时候,首先会调用Presenter层的某个接口,然后Presenter层会调用Model层请求数据,当Model层数据加载成功之后会调用Presenter层的回调方法通知Presenter层数据加载完毕,最后Presenter层再调用View层的接口将加载后的数据展示给用户。这就是MVP模式的整个核心过程。
这样分层的好处:就是大大减少了Model与View层之间的耦合度。一方面可以使得View层和Model层单独开发与测试,互不依赖。另一方面Model层可以封装复用,可以极大的减少代码量。当然,MVP还有其他的一些优点,这里不再赘述。下面看下MVP模式在具体项目中的使用。
相关文章推荐
- Android 调用系统联系人界面的添加联系人,添加已有联系人,编辑和修改。
- android cts理清testpackage和文件名的对应关系
- android waiting for debugger
- 2. Android框架和工具之 Volley
- The project target (Android 5.0.1) was not properly loaded.
- Android 平台电容式触摸屏硬件基本原理
- android测试手机不显示崩溃日志
- (转)Android Studio 不错的开源库
- Android中手机通讯录的获取
- (4.5.4.3)使用Android Studio进行本地单元测试(Local Unit Tests)
- AndroidStudio快捷键使用
- Android学习之事件分发机制
- Android Studio Failed to complete Gradle execution 解决方法
- Android中设计模式的比较
- (4.4.14.1)Android_关于子控件和父控件的事件响应问题
- Android平台的跨进程通信——AIDL(上)
- Android View框架的draw机制
- Android自定义View
- Android中自定义View实现圆环等待及相关的音量调节效果
- Android 通过Stack管理Activity