MVP(Model-View-Presenter) 是总所周知MVC模式的一个演变,他们的主要目的都是划分模块职责,降低模块耦合,易测试,提高代码复用,网上有很多相关的知识,这里仅是个人看法。
创新互联建站是一家专业提供仁布企业网站建设,专注与做网站、网站设计、html5、小程序制作等业务。10年已为仁布众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。1、层级
Model:负责数据相关的操作
View:负责UI的绘制和用户的交互
Presenter:作为Model和View的中间协调部分,负责两者之间的业务逻辑处理
2、MVP的优缺点
优点:降低耦合,层级职责更明显,易于单元测试
缺点:造成类数量增多,在某些场景下presenter的复用会产生接口冗余
这几天把以前项目上做过的一个类似淘宝订单的页面单独提取出来重新做了一遍,把一些公共代码提取出来,方便以后用到类似界面简易集成,同时也用到了MVP框架,通过MVP之间各层次互相绑定的最基础的类,将数据和逻辑分离开,这是效果图
值得一提的是,这里用到了一些其他开源代码,比如刷新样式swipetoloadlayout等,具体的使用方法大家可以百度搜下名字就行了,资料很多。
4个Fragment用的统一的静态构建方法,配合ViewPager和TabLayout进行一次性集成
//统一的Fragment构建方法 public static MerchandiseListBaseFragment newInstance(int flag) { Bundle args = new Bundle(); //type代表页签,0:全部订单 1:待发货 2:待收货 3:已完成 args.putString("type", String.valueOf(flag)); MerchandiseListBaseFragment fragment = new MerchandiseListBaseFragment(); fragment.setArguments(args); return fragment; }