UIViewController 是所有控制器的基类。
UINavigationController, UITabBarController 都属于“容器控制器” container viewcontroller 。苹果用它们封装了所有被包含控制器之间的转场的实现。如UINavigationController 我们称它为“导航控制器”,使用push, pop 操作可以实现视图之间的转场。uitabbarcontroller,我们可以通过点击底部的tabbar来实现视图间的切换。至于你说的为什么在viewcontroller 中,可以通过self.navigationcontroller 来访问到控制器所在的导航控制器。那是因为有时候VIEW之间的关系可能变得非常复杂,所以UIVIEWCONTROLLER类里就定义了tabBarController 和navigationController,如果他的parentViewContoller是tabbar或者navigationbar的话,自动就会产生关联.
UINavigationController, UITabBarController 都属于“容器控制器” container viewcontroller 。苹果用它们封装了所有被包含控制器之间的转场的实现。如UINavigationController 我们称它为“导航控制器”,使用push, pop 操作可以实现视图之间的转场。uitabbarcontroller,我们可以通过点击底部的tabbar来实现视图间的切换。至于你说的为什么在viewcontroller 中,可以通过self.navigationcontroller 来访问到控制器所在的导航控制器。那是因为有时候VIEW之间的关系可能变得非常复杂,所以UIVIEWCONTROLLER类里就定义了tabBarController 和navigationController,如果他的parentViewContoller是tabbar或者navigationbar的话,自动就会产生关联.
解决方案 »
- 求助!关于百度地图轨迹回放功能的实现
- 使用MKMapView控件缩小地图时遇到问题
- tableview自定义cell布局,在xib文件拖拽控件时自动后移。。
- 关于viewport
- 急急急急~~~XMPP使用详解..........
- 64位 win 7安装Mac虚拟机
- iOS 运行报错 调试
- 请教各位大侠,有没有iphone手机的模拟器,主要是能安装软件
- 小问题求教:在界面上每隔0.5s,依次显示1 - 6 ,但是仿真结果却是一直停在进入的界面,直到代码执行完,lbl直接显示6.
- 手机扫描识别二维码丶相机识别的透明界面求帮忙调整 拜托了
- 百度云推送,setupChannel, isFirstLaunch
- 我想问下IOS程序是否可以在后台请求http
是对UIViewController的拓展,也就是说UIViewController并没有保存UINavigationController的属性,是你每次self. navigationcontroller的时候实时计算出来的,实现类似于这样:- (UINavigationController *)navigationController {
// ...
return ...;
}如果你的UIViewController不在UINavigationController的viewControllers数组里,访问navigationController就是nil,UITabBarController也同理