ios – 在横向模式下视频播放后的状态栏下的导航栏

前端之家收集整理的这篇文章主要介绍了ios – 在横向模式下视频播放后的状态栏下的导航栏前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
问题:

在横向模式播放视频后,导航栏处于状态栏下方.

应用程序:

>仅限iOS9.
>仅支持肖像模式.
>视图控制器上有一个网页视图,网页视图将打开一个YouTube链接
>视图控制器嵌入到导航控制器中

设置重现:

>在webView中播放视频,
>将设备置于横向模式.
>以横向模式关闭视频播放,应用程序可以追溯到纵向模式
导航栏位置错误

截图:

>应用程式打开时

>播放器视频和放置设备在风景

>问题

解决方法

Swift 3

在呈现视图控制器中,将prefeRSStatusBarHidden属性替换为仅在状态栏中隐藏状态栏.

override var prefeRSStatusBarHidden: Bool {
    return UIApplication.shared.statusBarOrientation.isLandscape
}

然后在设备旋转时添加一个观察者.

override func viewDidLoad() {
    super.viewDidLoad()

    NotificationCenter.default.addObserver(self,selector: #selector(videoDidRotate),name: .UIDeviceOrientationDidChange,object: nil)
}

在观察者的方法中,调用setNeedsStatusBarAppearanceUpdate:

func videoDidRotate() {
    self.setNeedsStatusBarAppearanceUpdate()
}

应该这样做

猜你在找的iOS相关文章