1

IOS 13 带来了 UIWindowScene。在我的应用程序中,我使用下一个代码来播放视频:

let playerVC = AVPlayerViewController()
let asset = AVURLAsset(url: videoURL)
let item = AVPlayerItem(asset: asset)
playerVC.player = AVPlayer(playerItem: item)
playerVC.showsPlaybackControls = true
targetViewController.present(playerVC, animated: true) {
     playerVC.player?.play()
}

如果我将应用程序方向锁定为纵向,则会出现问题。在视图控制器中:

override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
    return .portrait
}

然后我介绍 AVPlayerViewController。视频开始后,我旋转设备,以便以横向模式播放视频。然后我按十字键,AVPlayerViewController 被解雇。他下方的控制器保持横向模式,不会向后旋转。在我的情况下,shouldAutorotate 必须为假。当我进行视图调试时,它显示根 UIWindowScene 开始处于横向模式。我没有找到任何 API 来强制旋转它。在 ios 12 及更早版本中,一切正常。

4

0 回答 0