如何在ios中访问spliviewcontroller的viewcontrollers

时间:2013-11-06 10:34:40

标签: ios objective-c

嗨在我的一个ipad应用程序中,我使用的是splitviewcontroller。我的应用程序实际上在IOS6中运行良好,现在新的要求来自客户端。根据客户端请求,我开始将应用程序移植到IOS7。但是在移植到IOS7时,与spliviewcontroller Y位置链接的viewcontroller视图增加了20个像素,因为导航栏和tableview从状态栏向下移动了20个像素。它在IOS6中运行良好但在IOS7中我只面对这个问题。所以请让我知道如何解决这个问题。谢谢。

3 个答案:

答案 0 :(得分:0)

我在iOS 7上遇到了类似的问题并修复了关闭半透明导航栏的问题:

if ([self respondsToSelector:@selector(topLayoutGuide)]){

    self.navigationController.navigationBar.translucent = NO;

}

答案 1 :(得分:0)

这适用于IOS 7:

UISplitViewController * splitViewController =(UISplitViewController *)self.window.rootViewController;     UINavigationController * leftNavController = [splitViewController.viewControllers objectAtIndex:0];

答案 2 :(得分:0)

这可能是一个布局问题,因为KamilPyc指出它可以使用半透明关闭。或者您可以在viewDidLoad中使用它。

- (void)viewDidLoad
{
    [super viewDidLoad];
    if ([self respondsToSelector:@selector(setEdgesForExtendedLayout:)])
        [self setEdgesForExtendedLayout:UIRectEdgeNone];
}