因此,在Swift应用程序的UIView中播放视频时遇到很多麻烦。首先,这可能甚至不是正确的方法。我要实现的是在ViewController顶部的矩形内播放视频,例如,不能全屏播放。但是无论我尝试什么,只要按下播放按钮,它就会切换为全屏模式。我将如何去做呢?谢谢大家
这是我用来播放视频的代码
@IBAction func feedConnect(_ sender: Any) {
let url = feedUrl.text
writeToFile(fileName: "connections", stringToWrite: url!)
let movieURL:NSURL? = NSURL(string: url!)
if let url = movieURL {
self.avPlayer = AVPlayer(url: url as URL)
self.avPlayerViewController.player = self.avPlayer
self.avPlayerViewController.entersFullScreenWhenPlaybackBegins = false
}
self.present(self.avPlayerViewController, animated: true, completion: {() -> Void in self.avPlayerViewController.player?.play()})
}
我想像这样在灰色矩形内播放视频:
答案 0 :(得分:0)
可以使用AVPlayerViewController
而不是使用AVPlayerLayer
。给它提供所需的框架,然后将其作为子层添加到视图层。
例如,这里有一个名为playerArea
的UIView,它是您的灰色矩形:
let playerLayer = AVPlayerLayer(player: player)
playerLayer.frame = playerArea.frame
playerArea.layer.addSublayer(playerLayer)