UIWebView嵌入式YouTube视频播放中的状态栏问题

时间:2014-01-30 09:59:22

标签: ios video uiwebview youtube

播放YouTube视频如下:

videoView = [[UIWebView alloc] initWithFrame:CGRectMake(10, 50, 300, 215)];
videoView.backgroundColor = [UIColor clearColor];
videoView.opaque = NO;
videoView.delegate = self;
[self.view addSubview:videoView];
NSURLRequest *loadRequest=[NSURLRequest requestWithURL:Your_Youtube_URL];
[videoView loadRequest:loadRequest];

问题: UIWebView嵌入式YouTube视频播放中的状态栏问题

产生状态栏问题的步骤:

  • 当应用程序方向支持仅为肖像时。

  • 用户点击在UIWebview嵌入式youtube视频播放器上播放视频

  • 设备打开其默认视频播放器播放视频,即使您的应用只有方向支持肖像,也可以提供横向播放视频

  • 现在,用户将设备方向更改为横向,以全屏查看视频

  • 现在,用户按完成按钮停止视频并返回应用程序

  • 在这种情况下,状态栏保持横向状态,应用程序屏幕以纵向模式显示。

1 个答案:

答案 0 :(得分:4)

<强>解决方案:

- (void)viewDidLoad
{
…

[[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(VideoExitFullScreen:)
                                                 name:@"UIMoviePlayerControllerDidExitFullscreenNotification"
                                               object:nil];

}

- (void)viewDidUnload
{

…

[[NSNotificationCenter defaultCenter] removeObserver:self
                                                    name:@"UIMoviePlayerControllerDidExitFullscreenNotification"
                                                  object:nil];
}

- (void)VideoExitFullScreen:(id)sender{

    [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait animated:NO];

}