2016技术笔记

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

2018-07-27  本文已影响10人  满庭花醉三千客

继续延伸LDBusMediator的组件化之路。

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

ViewController-FirstVC-SecondVC-ThirdVC

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

ViewController-FirstVC-SecondVC-ThirdVC-MondayVC

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

需要额外操作的几步:

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

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

3 新建一个继承于QKProjectProtocol的ProjectBProtocol。

ProjectBProtocol.h

屏幕快照 2016-10-13 下午5.38.37.png

ProjectBProtocol.m

屏幕快照 2016-10-13 下午5.39.04.png 屏幕快照 2016-10-13 下午5.39.16.png 屏幕快照 2016-10-13 下午5.39.43.png 屏幕快照 2016-10-13 下午5.39.58.png 屏幕快照 2016-10-13 下午5.40.13.png

4 前往MondayVC中写参数字典、回传参数方法

MondayVC.h

屏幕快照 2016-10-13 下午5.47.15.png

MondayVC.m

屏幕快照 2016-10-13 下午5.47.30.png

5 前往A组件中调用的地方,也就是ThirdVC中,调用服务:

导入QKMediator和ProjectBProtocol的头文件。

在按钮点击事件中如下编码:

屏幕快照 2016-10-13 下午5.49.30.png

然后就是运行了:

useTwo.gif

最后,上流程梳理图:

屏幕快照 2016-07-05 11.16.59.png

有没有觉得混乱?

好吧,我再用语言表述一下:

第一步,建QKProjectProtocol。

第二步,建继承于QKProjectProtocol的ProjectAProtocol

第三步,在ProjectAProtocol中导入组件A的各个头文件,然后初始化URL-VC表

第四步,将ProjectAProtocol注册到QKMediator中,生成 协议名-协议 注册表。

第五步,使用时,传入URL和协议。先到QKMediator中,根据协议名-协议注册表找到ProjectAProtocol,判断能否打开URL,然后把URL传给ProjectAProtocol。

第六步,在ProjectAProtocol中得到URL后,利用URL-VC表,找到对应的VC,然后调用VC的服务。

组件B的使用,重复第二步到第六步即可。

加油!~

上一篇下一篇

猜你喜欢

热点阅读