【发布时间】:2016-04-04 12:28:15
【问题描述】:
我需要在游戏结束时播放一段短视频。
我在我的故事板上创建了一个 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 在部分屏幕上显示本地视频是多么困难...
有什么帮助吗?
【问题讨论】:
-
你有解决办法吗?
-
@Khush 否定
标签: ios swift avplayerviewcontroller