在Xcode 4.5中针对iOS 6 SDK构建时,视图下降20像素

Mat*_*tyG 9 uiview uisplitviewcontroller ios ios6 xcode4.5

在针对iOS 6.0 SDK构建我的iPad应用程序后,我通过UISplitViewController的详细视图得到了这种奇怪的行为.详细视图的位置比应有的低20个像素(点/ 40像素).

在此输入图像描述

这是5.1下的样子:

在此输入图像描述

对于Interface Builder中的DetailViewController_iPad.xib,我将模拟指标>顶栏设置为无.这没有用.我已经记录了视图框:

- (void) viewDidLayoutSubviews {
//.. etc
NSLog(@"viewDidLayoutSubviews: %@", CGRectCreateDictionaryRepresentation(self.view.frame) );
}
Run Code Online (Sandbox Code Playgroud)

这将高度记录为684而不是它应该是:704.

Height = 684; Width = 703; X = 0; Y = 0;

任何人都有这方面的经验吗?我接下来应该尝试什么?

更新:这个问题似乎是间歇性的,有些编译导致它,有些则没有.

如果其他人遇到这个问题并找出原因造成的,我仍然很想知道.

8su*_*has 9

我有完全相同的问题!

当导航控制器中有另一个视图控制器并且在方法应用程序中推送此拆分视图控制器时,会出现此问题:didFinishLaunchingWithOptions:在应用程序启动期间.

这解决了我的问题:

当我推动我使用的splitViewController时

dispatch_async(dispatch_get_main_queue(), ^{

     [self.navigationController pushViewController:splitViewController animated:NO];

})
Run Code Online (Sandbox Code Playgroud)

代替

[self.navigationController pushViewController:splitViewController animated:NO];
Run Code Online (Sandbox Code Playgroud)

我仅将此用于iOS6,否则第一个视图将在OS <iOS6中暂时显示.