我关注https://stackoverflow.com/a/46337372/2139691是为了填补背景。 因此,我使用了名为myview的蓝色背景视图,但是当我添加视频层时,效果不好。
class MovViewController: UIViewController {
var avPlayer: AVPlayer!
@IBOutlet weak var myview: UIView!
override func viewDidLoad() {
super.viewDidLoad()
let filepath: String? = Bundle.main.path(forResource: "video_fondo", ofType: "mp4")
let fileURL = URL.init(fileURLWithPath: filepath!)
let player = AVPlayer(url: fileURL)
let playerLayer = AVPlayerLayer(player: player)
playerLayer.frame = myview.bounds
myview.layer.insertSublayer(playerLayer, at: 0)
player.play()
}
}
答案 0 :(得分:1)
默认情况下,播放器层背景是透明的。如果您想隐藏后面的蓝色视图,请尝试在播放器层上设置背景色。
playerLayer.backgroundColor = UIColor.black.cgColor
答案 1 :(得分:1)
最后我使用:
playerLayer.videoGravity = AVLayerVideoGravity.resize