调整背景视频的大小 - SWIFT

Resize background video - SWIFT

我在 swift 中创建了一个背景视频。但无论如何,视频都太小了。它没有像预期的那样覆盖整个屏幕。

这是目前的结果。我要做的是覆盖整个屏幕。

private func setupView()
{
    let path = URL(fileURLWithPath: Bundle.main.path(forResource: "mydogwalkvideo", ofType: ".mp4")!)

    let player = AVPlayer(url: path)

    let newLayer = AVPlayerLayer(player: player)
    newLayer.frame = self.videoView.frame
    self.videoView.layer.addSublayer(newLayer)
    newLayer.videoGravity = AVLayerVideoGravity.resizeAspectFill //It's set to resize aspect to fill

    player.play()
    player.actionAtItemEnd = AVPlayer.ActionAtItemEnd.none


    NotificationCenter.default.addObserver(self, selector: #selector(ViewController.videoDidPlayToEnd(notification:)), name: NSNotification.Name(rawValue: "AVPlayerItemDidPlayToEndTimeNotification"), object: player.currentItem)

}

@objc func videoDidPlayToEnd(notification: Notification)
{
    let player: AVPlayerItem = notification.object as! AVPlayerItem
    player.seek(to: CMTime.zero)
}

附加信息:

视频尺寸通常为 1920x1080

您需要在方法内更新框架 viewDidLayoutSubviews

override func viewDidLayoutSubviews() {
    self.newLayer.frame = self.view.bounds
    self.videoView.frame = self.view.bounds
}