导航栏在QLPreviewController中与状态栏重叠

Abh*_*nav 3 cocoa-touch objective-c uiviewcontroller ios qlpreviewcontroller

我第一次处理QLPreviewController并遇到状态栏重叠的导航栏问题.以下是我遇到此问题的步骤:

  1. 点击UI以模态方式启动QLPreviewController.这在这里工作正常.我看到导航栏和状态栏正确对齐.
  2. 点击QLPreviewController中加载的视图内部.导航栏被隐藏.
  3. 在QLPreviewController中加载的视图内再次点击.导航栏显示回来,导航栏与状态栏重叠.请参阅随附的屏幕截图.

知道这里有什么不对吗?

PS:这仅在横向模式下发生.肖像模式工作正常.

这是我的代码:

QLPreviewController *aQLPreviewController = [[QLPreviewController alloc] init];
aQLPreviewController.dataSource = self;
aQLPreviewController.delegate = self;
[myViewController presentViewController:aQLPreviewController animated:YES completion:NULL];
Run Code Online (Sandbox Code Playgroud)

QLPreviewController委托方法:

- (NSInteger) numberOfPreviewItemsInPreviewController: (QLPreviewController *)iController {
    return 1;
}


- (id <QLPreviewItem>) previewController: (QLPreviewController *) iController previewItemAtIndex: (NSInteger) iIndex {
    if (iIndex == 0) {
        return self.myURL;
    } else {
        return nil;
    }
}


- (void)previewControllerDidDismiss:(QLPreviewController *)iController {
    self.myURL = nil;
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Val*_*gin 11

这个对我有用:

- (BOOL)prefersStatusBarHidden {
    return NO;
}
Run Code Online (Sandbox Code Playgroud)