1. 控制器有自己的链条,也就是说父子控制器链
2. 在屏幕大的情况下,可以使用多个控制器来管理相应的逻辑
3. 控制器的消息传递也只有父子控制器才可以
开发准则
1, 如果在view 视图是父子关系,那么在控制器上也要是父子关系
2, 如果要使用控制器的一些方法,一定要用父子控制器如:
dismissViewControllerAnimated pushViewController 以及监听控制器的如 viewWillTransitionToSize
- 3,parentViewController 可以查看父控制器
self.navigationController 的原理就是
使用parentViewController 不断的去找 父控制器 是不是 navigationController(导航控制器)如果没找到就返回 nil
4,使用 [self addChildViewController:chlidVC]; 管理子控制器,使用addSubview 添加子控制器的view
(addSubview 内部不会对添加同一个对象,重复添加只会将当前对象放到数组的底部,也就是父视图图层的最上面,用户可以看到的那层)