在 iOS 10 中动态调整 AVPlayer 的大小

Dynamically resizing AVPlayer in iOS 10

我有一个 AVPlayer,可以在我的 iOS 10 应用程序中以简单的方式加载:

 let player = AVPlayer(url: url)

 let controller = AVPlayerViewController()
 controller.player = player

 present(controller, animated: true) {
   player.play()
 }

这将打开一个播放器,它占据了 window 的整个框架。我希望理想情况下能够让播放器只占据我屏幕的一半,这样我就可以在下半部分添加其他内容。我想让用户能够将播放器放大到全屏,也许是通过我经常看到的 overlay/button:

不让我的 AVPlayer 占据全屏的最佳方法是什么?我应该查看哪些文档?

而不是调用 present,成为自定义父视图控制器并将 AVPlayerViewController 设为您的子视图控制器。现在,如果您进行了正确的父子舞蹈,您只需设置 AVPlayerViewController 视图的 frame 并将其作为子视图添加到您的视图中。该视图保留了用户将其发送到全屏模式的能力(它将具有您在屏幕截图中显示的 double-arrow 按钮)。