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 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...