2015-02-05 106 views
1

我有一个向用户显示文件的iPhone应用程序(视频,pdf文件和文档)。当你在我的FileViewController中点击一个文件缩略图时,我调用UIDocumentInteractionController将该文件呈现给用户。除文档控制器外,所有应用程序屏幕均被锁定为纵向,可旋转以查看横向。在以前的版本中,这一切都运行正常,但它突然发生了变化,并且被破坏,我认为当iOS 8发布时。播放横向视频后的纵向显示问题

现在,如果我播放视频并将其旋转到横向并完成播放,视频将从屏幕中移除,并调用文档的FileViewController笔尖视图在屏幕中间向下切断。

我已经做了一些测试,并打印出了视图边界的宽度和高度。在iPhone 4S上测试时,当我第一次加载FileViewController时,宽度和高度是320 x 480,是正确的。

当我在横向模式下播放视频并完成时,下视图会自动旋转回纵向,因为横向在此视图中不受支持,但打印出屏幕边界时,宽度为480,高度为320。它仍然认为该应用程序在风景中,即使它已被移回肖像。屏幕本身是正确的方向,只是在320像素后切断!

我一直试图操纵alsorts的控件的方向,但我看不出什么是甚至产生的问题,更不用说修复它。

这是我如何通过定向实施:

应用程序已经成立,以支持所有方向。

我有子类的标签栏控制器指定以下内容:

- (BOOL)shouldAutorotate 
{ 
    return YES; 
} 
- (NSUInteger)supportedInterfaceOrientations 
{ 
    return UIInterfaceOrientationMaskPortrait; 
} 
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation 
{ 
    return UIInterfaceOrientationPortrait; 
} 

在FileViewController我叫下面的代码:

​​

任何想法?我搜索了一下,但我找不到有这个问题的人。谢谢。

回答

2

只是为别人遇到此问题,我提出了与苹果的支持票,显然这是一款iOS漏洞....

“这是一个错误QLPreviewController(用于通过UIDocumentInteractionController显示预览) “

我有一个工作,现在工作正常。在我的UITabBarController的子类中,我已经包含了这段代码:

- (void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 

    if (self.transitionCoordinator && self.presentedViewController.presentationController { 
     self.view.frame = self.presentedViewController.presentationController.containerView.bounds; 
    } 
} 
+0

这可悲的不适合我,苹果的任何更新? – 2015-04-24 07:15:06

+0

适合我,谢谢! – 2015-05-07 15:41:18

相关问题