iOS 6 旋转与来自 UIWebView 的 MPMoviePlayerViewController
Posted
技术标签:
【中文标题】iOS 6 旋转与来自 UIWebView 的 MPMoviePlayerViewController【英文标题】:iOS 6 rotation with an MPMoviePlayerViewController from UIWebView 【发布时间】:2012-12-01 22:59:39 【问题描述】:我继承了一个自 ios 3 时代以来就没有维护过的 iOS 应用程序。该应用程序依赖于 Web 视图来显示一些数据。其中一项功能是以全屏模式显示视频。客户需要的是对设备旋转做出反应的视频,但所有其他视图都应该是纵向的。
我已经设法找出所有 window.rootViewController
和 shouldAutorotate
的变化。我只在需要时才让应用程序旋转。我面临的问题是视频旋转“太多”。
如果我向左旋转设备,视频会旋转 180 度(它会进入倒置方向)。向右旋转会导致视图宽度缩小一半,但方向正确。我不太确定问题出在哪里。
有人遇到过类似的问题吗?
【问题讨论】:
【参考方案1】:通过继承一个项目,我确实遇到了同样的问题。在我的例子中,应用程序是基于导航的,问题是UINavigationController
的主视图被添加为UIViewController
视图的子视图。
所以,最初我的 application:didFinishLaunchingWithOptions:
上有这个代码:
self.viewController = [[MyViewController alloc] init];
self.window.rootViewController = self.viewController;
这个在MyViewController
的viewDidLoad
上:
UINavigationController *navController = [[UINavigationController alloc] init];
[self.view addSubview:navController.view];
然后我简单地将我的application:didFinishLaunchingWithOptions:
更改为:
self.viewController = [[MyViewController alloc] init];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:self.viewController];
self.window.rootViewController = self.navigationController;
希望对你有帮助!
【讨论】:
好久都忘记这个问题了。我的问题的解决方法与这里解释的有点不同。但它给了我一些想法,特别是容器嵌套。我的问题是由于将 ios3 移动到 ios4.3 以及之前如何将视图合并在一起造成的。以上是关于iOS 6 旋转与来自 UIWebView 的 MPMoviePlayerViewController的主要内容,如果未能解决你的问题,请参考以下文章
swift 笔记:iOS与JavaScript的交互(一):UIWebView - 2.1直接使用字符串通过评估Java脚本(来自:)