簡體   English   中英

導航欄在QLPreviewController中與狀態欄重疊

[英]Navigation bar getting overlapped by status bar in 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];

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;
}

在此輸入圖像描述

這個對我有用:

- (BOOL)prefersStatusBarHidden {
    return NO;
}

通過在info.plist中添加UIViewControllerBasedStatusBarAppearance布爾鍵並指定值“NO”來解決此問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM