在UINavigationViewController内的UIViewController主视图的框架

时间:2016-04-01 03:47:22

标签: ios uiviewcontroller uinavigationcontroller uikit

我对ViewController中[ {"id":"1","employee_id":"1","start_date":"2016-03-30 19:21:09", "end_date":"2016-03-31 19:24:44"}, {"id":"3","employee_id":"2","start_date":"2016-03-31 21:44:09", "end_date":"2016-03-31 21:44:09"} ] 的框架感到困惑,我已经创建了UINavigationViewController的根ViewController。假设我向self.view添加了一个红色方形UIView(其中self.view是嵌入式ViewController的视图属性)。此红色视图主要由导航栏遮挡。换句话说,为什么没有self.view的框架来源.Y = HeightOfNav吧?相反它是0.

我已阅读文档,说明添加到导航控制器的视图会调整大小以考虑导航栏的高度,但是,我的所有测试都表明情况并非如此。在视图生命周期中的任何时候,我的视图都不会将其原点更正为可见。也许我正在设置这个viewcontroller / navigationController错误,这样就不会进行适当的视图调整,但你可以阅读后续代码,看看是否是这种情况。

以下是我在appdelegate中生成这些视图控制器的简单代码:

self.view

UIViewController * a = [[ViewController alloc] init]; UINavigationController * nav = [[UINavigationController alloc] initWithRootViewController:a]; self.window.rootViewController = nav; self.viewaviewDidLoad等中注销viewWillAppear的框架,显示{ 0,0,screenWidth,screenHeight}(其中screen *是当前的模拟器)。所以,0,0落后于navBar,这不是我期望的行为。

同样,我的期望是viewDidAppear现在有一个框架,其原点在UINavigationController内任何视图顶部的NavigationBar之后开始。

0 个答案:

没有答案