MVP模型复杂视图的思考
来源:互联网 发布:黑客远控软件 编辑:程序博客网 时间:2024/06/05 21:52
MVP模型应该是android比较流行的一种设计方法。view和 data解耦非常棒。但是有一个缺点就是presenter类比较多,接口更是很多。
MVP模型在简单的视图下,比较没有悬念,1个view 对应一个presenter
但是在视图比较复杂,视图需要分离的时候就有交互上的问题了。
目前我在代码中分别应用了如下三种方式:
一:. 一个P对应一个VManager:
使用这种方式的好处:
控制端对视图的调用 只调用viewManager就好。无需考虑在各种情况下使用各种View。将View的显示交给ViewManager。
坏处:
1.P和V端中的方法会非常多,因为ViewManager包含了所有View的方法。
2.ViewManager因为涉及到了创建各种view、fragment实际上只能由Activity来扮演。
二:P V单对单,P之间的交互由PresenterManager来管理
这种方式的好处
视图控制分离
1.PManager和P端中的方法会非常多,因为PManager包含了所有P的方法。
2.P端需要考虑时间创建view。因为view不是在第一时刻全部创建的。
三:P V 单对单 P之间如果有交互则相互引用
好处:P V 一对一、只实现对应接口,没有多余接口
坏处:有交互的P之间不是接口编程而是实现编程
这种方式还可以使用RxBus/EventBus来解耦P之间的交互
因为目前我使用的是第三种方式,前面两种方式没有思考太多,肯定还有问题。
第三种方式并不是最好的方式。使用哪一种方式需要考虑view的实际情况。
阅读全文
0 0
- MVP模型复杂视图的思考
- 复杂的MVP
- 复杂的MVP+refit+greendao
- 复杂的列表视图
- 关于MVP的一些思考
- .NET:关于数据模型、领域模型和视图模型的一些思考
- backbone为复杂Javascript应用程序提供模型(models)、集合(collections)、视图(views)的结构
- oracle创建复杂的视图
- mvp思考
- GWT的MVP设计模型
- 产品经理的MVP模型
- Android MVP 模型的使用
- 【OpenGL】OpenGL视图和模型变换中各变换发生顺序的思考
- OpenGL视图和模型变换中各变换发生顺序的思考
- MVC和MVP的一些思考
- MVC和MVP的一些思考
- MVC和MVP的一些思考
- 关于Android MVP模式的思考
- 11 程序员的发展方向和薪水
- ARP协议与RARP协议
- Ubuntu设置Static IP的方法Ifconfig网络配置工具详解
- 高级CSS filters
- 虚拟机下 linux 连接网络并设置固定ip
- MVP模型复杂视图的思考
- 从零开始的Spring Boot (一)
- 视频学习 ---------如何获取Mp4某个box下面的数据
- PDF.js插件的使用--在线浏览PDF文件
- 5分钟搞定android混淆
- Linux下MySQL表名不区分大小写的设置方法
- 第十三章:事件(内存和性能、模拟事件)
- show processlist命令
- 【电子产品】ThinkPad S5 Intel(R) Dual Band Wireless-AC 3165 网卡驱动莫名其妙挂掉