【问题标题】:UIWebView: Media Player Rotates View ControllerUIWebView:媒体播放器旋转视图控制器
【发布时间】:2012-06-25 20:28:36
【问题描述】:

我在使用 webview 时遇到问题。我的应用程序目前是一个纵向应用程序,但是当媒体播放器在我的应用程序的 web 视图中加载时,用户可以旋转播放器,这也旋转了我的视图控制器。我知道我可以在播放器出现和消失时收到通知,但是有没有办法阻止它首先旋转控制器?

似乎没有人有答案。我有所有标准的“除非我告诉你,否则不要旋转”方法和 plist 值,但它仍在旋转。只有当我加载 webview 并且媒体播放器加载它时。如果我旋转我的设备,媒体播放器也会随之旋转,这感觉很自然,但是当我回到 webview 视图控制器时,它会旋转,这并不好。

【问题讨论】:

  • 我无法重现此行为。当拥有 Web 视图的视图控制器禁止旋转时,Web 视图中的视频播放器不会自动旋转。在 4.3、5.1 和 6.0 上测试
  • 这没有任何意义。您是否尝试过使用您的设备加载 YouTube 并确保您的旋转锁定已关闭?
  • 我相信你的错误在别处。这是一个要确认的测试项目:dl.dropbox.com/u/1296542/NoRot.zip
  • @RileyE 是您的应用程序标签吗?
  • 没有。它基于 UINavigationController。

标签: ios uiwebview rotation


【解决方案1】:

在你的 info.plist 中添加这个键:

UISupportedInterfaceOrientations 并将其设置为 UIInterfaceOrientationPortrait

【讨论】:

    【解决方案2】:

    好吧,这是一个盲目的镜头。我已经使用这个技巧来强制系统调整到所需的方向,在 webview 出现或播放器消失时添加此行:

    UIViewController *viewController = [[UIViewController alloc] init];
    [self presentModalViewController:viewController animated:NO];
    [self dismissModalViewControllerAnimated:NO];
    

    尝试其中的一些方法,如果不起作用,则尝试使用 didAppear 或 didDisappear。我知道它看起来很垃圾,但有时可以。

    【讨论】:

    • 我知道你的意思,但我希望避免不必要的处理。我可能只是通过手动更改设备方向来强制它。
    • 是的,很遗憾,但这种东西是 iOS 中定位问题的唯一解决方案,我一直在努力解决这个问题。
    • 但我确信这是一个解决方案。这是一个非常重大的问题!
    • @NikolaiRuhe,除非我们是 Apple 工程师。这是一个已知的“错误”,至少从 iOS 3 开始,在 Apple 修复它之前,我们只是尝试通过我们肮脏的修复来忍受它......
    • 只是我,还是这很荒谬?怎么会有这么大的问题这么久?
    【解决方案3】:

    这个问题似乎没有正确答案。

    【讨论】:

      猜你喜欢
      • 2012-01-22
      • 1970-01-01
      • 2011-09-03
      • 1970-01-01
      • 1970-01-01
      • 2011-05-28
      • 1970-01-01
      • 1970-01-01
      • 2014-09-27
      相关资源
      最近更新 更多