2013-10-18 89 views
4

我有我移植到iOS 7,大部分与状态栏“问题”已经得到解决,但可悲的是一个仍然是一个iPad应用程序。 当我打开使用UIDocumentInteractionController我让我的漂亮的文档的预览PDF文档。但是当我点击pdf获取“Open with ...”对话框和关闭按钮的状态栏时。它与状态栏重叠。UIDocumentInteractionController重叠状态栏在iOS的7

UIDocumentInteractionController statusbar overlap

我尝试使用edgesForExtendedLayout方法。但UIDocumentInteractionController不接受它。 如何防止重叠UIDocumentInteractionController视图状态栏?

回答

2

实测值新的解决方案。

在Info.plist文件中添加此为iOS 7: UIViewControllerBasedStatusBarAppearance(查看基于控制器的状态栏外观)= NO

0

我猜你的视图控制器是模态显示?

如果是,我发现的唯一的解决方案是将壳体:

  • 嵌入您视图控制器在导航控制器

  • 呈现导航控制器模态

  • 在documentInteractionControllerViewControllerForPreview返回导航控制器,而不是视图控制器

这将推动UIDocumentInteractionController而不是其显示为全屏模式的VC,不会搞砸了你的视图控制器。

+0

正如powpow所建议的那样,我将导航控制器作为UIDocumentInteractionController的viewcontroller提供。这在某种意义上是有效的,预览然后被推到导航控制器上,状态栏看起来不错!但是,我并未在任何地方使用导航控制器,并且在UISplitview中,预览仅覆盖屏幕的一部分。 – Deddiekoel

1

对于其他人对这个绊脚石的iOS8上,像我这样的:看来,这个问题是在iOS8中翻转。你需要删除UIViewControllerBasedStatusBarAppearance键从info.plist状态栏在UIDocumentInteractionController中看起来是正确的。

执行优先状态栏隐藏根据需要在每个UIViewController上。

这次至少这对我有效。