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 ピクセルはありません

ios6/7 デルタを -20/20 に設定しても、何も役に立たず、私にとってはうまくいきます

あなたのコメント歓迎

ここに画像の説明を入力

4

0 に答える 0