1

我使用下面的代码来调整视图以适应 iOS7 上的 statusBar

- (void) adjustViewAdaptToiOS7 {



    if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) {
        CGRect screen = [[UIScreen mainScreen] bounds];
        if (self.navigationController) {
            CGRect frame = self.navigationController.view.frame;
            frame.origin.y = 20;
            frame.size.height = screen.size.height - 20;
            self.navigationController.view.frame = frame;
        } else {
            if ([self respondsToSelector: @selector(containerView)]) {
                UIView *containerView = (UIView *)[self performSelector: @selector(containerView)];

                CGRect frame = containerView.frame;
                frame.origin.y = 20;
                frame.size.height = screen.size.height - 20;
                containerView.frame = frame;
            } else {
                CGRect frame = self.view.frame;
                frame.origin.y = 20;
                frame.size.height = screen.size.height - 20;
                self.view.frame = frame;
            }
        }
    }  
}

它适用于 pushViewController

[self.navigationController pushViewController :vViewController animated:true];

在此处输入图像描述

但对于

presentModalViewController

[self  presentModalViewController:vViewController animated:true];

顶部没有为 statusBar/iOS7 调整的间隙 20 pix

甚至将 ios6/7 deltas 设置为 -20/20,对我没有任何帮助和工作

欢迎您的评论

在此处输入图像描述

4

0 回答 0