objective-c - 如何旋转嵌入UIWebView的视频(iOS 7)?
问题描述
我在开发的APP是面向肖像的,但是当运行视频(内嵌在webview)的时候,我需要在风景模式下重新定位视频。应该怎么解决这一问题呢?我找到了一种解决方案,似乎可以解决问题。我觉得这是因为iOS 7的更新,但是我不确定。所以,这是我先前使用的,但是现在不起作用了,因为窗口和类名总是nil。
- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{id presentedViewController = [window.rootViewController presentedViewController];NSString *className = presentedViewController ? NSStringFromClass([presentedViewController class]) : nil;if (window && [className isEqualToString:@'MPInlineVideoFullscreenViewController']) { return UIInterfaceOrientationMaskAll;} else { return UIInterfaceOrientationMaskPortrait;}
原问题:How to rotate a video embed in UIWebView (for iOS 7 only)?
问题解答
回答1:答案:Denisia我自己找到了解决方法!在AppDelegate中执行如下方法,成功了!我的问题是,开始的时候,我没有检查右视图控制器(view controller)。
- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window {NSString *className = NSStringFromClass([window class]);if ([((UINavigationController *)window.rootViewController) respondsToSelector:@selector(visibleViewController)]) { className = NSStringFromClass([((UINavigationController *)window.rootViewController).visibleViewController class]);}if ([className isEqualToString:@'MPFullscreenWindow'] || [className isEqualToString:@'MPInlineVideoFullscreenViewController']) { return UIInterfaceOrientationMaskAll;} else if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad){ return UIInterfaceOrientationMaskLandscape;} else { return UIInterfaceOrientationMaskPortrait;}
Immi试试这个:
-(BOOL)shouldAutorotateToInterfaceOrientation: (UIInterfaceOrientation)interfaceOrientation{return YES;}
如果你想在屏幕不显示视频的时候,不让UIViewController旋转,就使用下面的:
-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{if(webView && webView.superView) return YES;return UIInterfaceOrientationIsPortrait(interfaceOrientation);}
相关文章:
1. mysql - 用PHPEXCEL将excel文件导入数据库数据5000+条,本地数据库正常,线上只导入15条,没有报错,哪里的问题?2. docker - 如何修改运行中容器的配置3. angular.js - angularJs ngRoute怎么在路由传递空字符串及用ng-switch取得4. dockerfile - [docker build image失败- npm install]5. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!6. 为什么我ping不通我的docker容器呢???7. nignx - docker内nginx 80端口被占用8. docker绑定了nginx端口 外部访问不到9. docker不显示端口映射呢?10. docker-compose中volumes的问题
