UITabBarController导航控制器控制器关系
Posted xujinzhong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UITabBarController导航控制器控制器关系相关的知识,希望对你有一定的参考价值。
UITabBarController与UINavigationController类似,UITabBarController也可以用来控制多个页面导航,用户可以在多个视图控制器之间移动,并可以定制屏幕底部的选项卡栏。
借助屏幕底部的选项卡栏,UITabBarController不必像UINavigationController那样以栈的方式推入和推出视图,而是组建一系列的控制器 ( 他们各自可以是UIViewController,UINavigationController,UITableViewController或任何其他种类的视图控制器),并将它们添加到选项卡栏,使每个选项卡对应一个视图控制器。
UITabBarController一般作为应用程序的rootViewController,而且它不能作为UINavigationController的rootViewController.
UITabBarController详解:https://my.oschina.net/CarlHuang/blog/159995
具体图片解释如下:
1、UINavigationController 也是一个控制器,但是他控制的对象不是view了,而是通过控制UIViewController来间接控制view,达到各个 UIViewController 之间的链接,切换业务逻辑关系。实际是个容器,存放了所有的UIViewController。
2、UIViewController 是一个UIView 控制器,在loadview 中加载view ,对UIView 进行加载,显示,消除,动画,直接操作。实际是个容器,存放了所有的UIView。
3、就好比UIView 是我们程序员,技术主管是 UIViewController,那么经理就是UINavigationController。
总结:可能是苹果当初设计这个的思想。
以上是关于UITabBarController导航控制器控制器关系的主要内容,如果未能解决你的问题,请参考以下文章
从嵌套在 UITabBarController 中的导航控制器推送视图控制器?
UITabBarController 内视图控制器的不同导航栏按钮/标题
为 UITabBarController 子视图控制器设置相同的导航栏?
UITabBarController 的子视图控制器中的导航栏按钮无响应