美文网首页2016技术笔记
2016笔记——组件化学习(八)

2016笔记——组件化学习(八)

作者: 满庭花醉三千客 | 来源:发表于2018-07-27 16:08 被阅读7次

    继续说说CTMediator组件化。

    上一篇实现了:主工程+项目A

    ViewController-FirstVC-SecondVC-ThirdVC

    这一篇的目标是:主工程+项目A+项目B

    ViewController-FirstVC-SecondVC-ThirdVC-MondayVC

    基于上一篇的基础,这篇仅延伸。

    需要额外操作的几步:

    1 新建一个MondayVC项目,完成相关编码。

    2 将MondayVC相关文件,导入上一篇的完工的项目。

    3 新建WLMediator的类目,WLMediator+ModuleB

    WLMediatro+Module.h

    屏幕快照 2016-10-14 下午5.55.10.png

    WLMediatro+Module.m

    屏幕快照 2016-10-14 下午5.55.23.png 屏幕快照 2016-10-14 下午5.55.33.png

    4 新建Project_BModule文件,导入MondayVC头文件

    Project_BModule.h

    屏幕快照 2016-10-14 下午5.56.32.png

    Project_BModule.m

    屏幕快照 2016-10-14 下午5.56.45.png

    5 在ThirdVC中导入WLMediatot+ModuleB头文件,然后在点击事件中编码:

    屏幕快照 2016-10-14 下午5.59.15.png

    6 运行:

    useTwo.gif

    打印台信息:

    屏幕快照 2016-10-17 上午9.34.05.png

    老规矩,上梳理图:

    WLMediator梳理.png

    有没有觉得很乱?

    我再用语言表述一下:

    1 创建WLMediator,提供两个方法:本地方法和远程方法。

    2 创建WLMediator的类目WLMediator+ModuleA,提供公开方法A。

    3 公开方法A中内部调用WLMediator的本地方法,生成Target-Action。

    4 根据本地方法生成的Target名称,构建继承于NSObject的Project_A。

    5 根据本地方法生成的Action名称,在Project_A中构建方法。

    6 在VC中调用组件A,先导入WLMediator+ModuleA的头文件,然后调用公开方法A。公开方法A的内部,会调用WLMediator的本地方法,构建Target-Action,然后利用Runtime去调Project_A中组件A的服务方法。

    7 多组件时,重复第2到6步即可。

    加油~

    相关文章

      网友评论

        本文标题:2016笔记——组件化学习(八)

        本文链接:https://www.haomeiwen.com/subject/sedgmftx.html