XZ_iOS之父子控制器以及使用父子控制器仿淘宝详情页

仿淘宝详情页,利用父子控制器,实现相同效果

效果图展示:

XZ_iOS之父子控制器以及使用父子控制器仿淘宝详情页

实现思路

点击“分享”弹出来的页面,使用透明的控制器实现效果;点击“查看评价”出来的页面,作为当前控制器的子控制器,它的view添加到当前控制器的view上,再添加一个从右往左的效果即可。

实现代码

https://github.com/CoderXAndZ/XZPushAnimation

父子控制器

1、控制器父子关系的建立原则

总结:如果2个控制器的view是父子关系[不管是直接还是间接的父子关系],那么这2个控制器也应该为父子关系

a.view.addSubview:b.view

a.addChildViewController:b 通过addChildViewController添加的控制器都会存在于childViewControllers数组中

或者

a.view.addSubview:otherView

otherView.addSubview: b.view

a addChildViewController:b // 建立父子关系,如果不写,有一些事件无法传递到b控制器中

 

2、添加一个子控制器

a.addChildViewController:b  // a是b的父控制器,b是a的子控制器

 

3、获取父控制器

a.parent

 

4、获得所有的子控制器

a.childViewControllers

 

5、移除子控制器:将一个控制器从父控制器中移除

a.removeFromParentViewController()