我对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.view
,a
,viewDidLoad
等中注销viewWillAppear
的框架,显示{ 0,0,screenWidth,screenHeight}(其中screen *是当前的模拟器)。所以,0,0落后于navBar,这不是我期望的行为。
同样,我的期望是viewDidAppear
现在有一个框架,其原点在UINavigationController内任何视图顶部的NavigationBar之后开始。