我需要在游戏结束时播放一段短视频。
我在我的情节提要上创建了一个 AVPlayerViewController,并使用来自前一个视图控制器的 segue 进行了模态演示。
但是我希望视频不要覆盖整个屏幕。假设屏幕尺寸的 50%(居中)。
这是我尝试过的代码:
import AVKit
import AVFoundation
import UIKit
class VideoPlayerViewController: AVPlayerViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewDidAppear(animated: Bool) {
// Play video
player?.play()
}
override func viewDidLayoutSubviews() {
print(videoBounds)
self.view.bounds = videoBounds
}
}
问题是视频缩放到整个屏幕非常小(比如大约 100*70 像素)。我相信默认大小在某些时候是 100*100 并且它会缩放它以匹配我的视频比例。
如果我不指定边界,它会缩放到整个屏幕(视频重力不让我选择)。
如果我在 viewDidLayoutSubviews 中减小整个视图的大小,仍然不行,因为此方法被多次调用,所以我不断更改视图边界。
我无法相信使用 AVPlayerViewController 在屏幕的一部分上显示本地视频有多难......
有什么帮助吗?