当状态栏较大时,UIDocumentInteractionController隐藏在导航栏后面(Personal Hotspot title)

时间:2015-01-05 00:34:40

标签: ios ios8

因此,由于Personal Hotspot标题,当状态栏的高度较大时,UIDocumentInteractionController正好隐藏在导航栏后面。我给它我的navigationController。看起来像IOS的bug。任何解决方案或解决方法?

UIDocumentInteractionController *pdfViewer = [UIDocumentInteractionController interactionControllerWithURL:url];
[pdfViewer setDelegate:self];
[pdfViewer presentPreviewAnimated:YES];

- (UIViewController *)documentInteractionControllerViewControllerForPreview (UIDocumentInteractionController *)controller {
    return self.navigationController;
}

enter image description here

2 个答案:

答案 0 :(得分:0)

所以这是我的'坏'解决方案。此代码使用我的自定义类。它的作用应该是可读的。它正在从导航控制器阵列更新每个第二个navigationBar和第一个控制器,因此它应该是由UIDocumentInteractionController在某个时刻呈现的控制器。一切都很好。

 _updateNavigationBarStyle = [self schedule:1 :^{
    self.navigation.navigationBar.translucent = NO;
    self.navigation.topViewController.view.top = self.navigation.navigationBar.bottom;
}].start;

- (void)documentInteractionControllerDidEndPreview:(UIDocumentInteractionController *)controller {
    [_updateNavigationBarStyle stop];

}

答案 1 :(得分:-2)

尝试单击您的UIDocumentInteractionController文件,然后执行编辑器>嵌入>导航控制器。