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必须为false。当我进行视图调试时,它表明根UIWindowScene开始处于横向模式。我没有找到可以旋转的API。 在ios 12和更早的版本中,一切正常。