iOS WebView中视频横屏播放返回导航栏在状态栏下面

iOS9以上系统横屏播放UIWebView中的视频返回后会出现以下问题:
1、如图,UIWebView中包含一个视频:

1

2、播放web内容中的视频,并横屏观看:
2

3、直接在横屏状态下返回,会出现状态栏盖在导航栏上面,导航栏位置错误的问题:
3

解决方法:
参照navigation bar under status bar after video playback in landscape mode的解决方法,Objective-C代码如下:
1、重载prefersStatusBarHidden方法:

- (BOOL)prefersStatusBarHidden {
    return UIInterfaceOrientationIsLandscape([UIApplication sharedApplication].statusBarOrientation);
}

2、监听屏幕旋转:

- (void)viewDidLoad {
    [super viewDidLoad];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(videoDidRotate) name:UIDeviceOrientationDidChangeNotification object:nil];
}

3、调用setNeedsStatusBarAppearanceUpdate:

- (void)videoDidRotate {
    [self setNeedsStatusBarAppearanceUpdate];
}

4、记得移除监听事件。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,731评论 4 61
  • 时常在想:如果每件事都变得很简单的话,幸福感是否就能大大的提高呢? 由于自己的多虑导致了一个错误两个错误……无限的...
    会发芽的豆子阅读 1,243评论 0 0
  • 从去年开始,我开始渐渐地接触外汇。那个时候,也不知道是谁把我拉进了外汇群,然后天天就看到他们在那里赚美金,看得我跃...
    灰姑娘玻璃鞋阅读 2,629评论 0 2
  • 莉和叶算是在网上认识的…… 那天,莉的QQ发了一条消息:这是你的小号吗? 莉觉得莫名其妙,赶紧回复:不是啊!你...
    北梦南夕阅读 1,423评论 0 0

友情链接更多精彩内容