AVPlayer在大屏iPhone上无法占满视图宽度的问题求助
AVPlayer在大屏iPhone上无法占满视图宽度的问题求助
大家好,我碰到一个棘手的问题:在大屏iPhone(比如模拟器里的iPhone 16 Plus)上,我的AVPlayer播放视频时没法按预期占满整个视图宽度,但在iPhone 15 Pro上运行完全正常。我尝试了各种方法来修复,比如给视频设置约束,但都没起作用。下面是我的代码和相关截图,提前感谢大家的帮助!
@IBOutlet weak var cover: UIView! private var playerLayer: AVPlayerLayer? private func setupVideoCover() { player = AVPlayer(url: videoURL) player?.isMuted = true player?.actionAtItemEnd = .none playerLayer = AVPlayerLayer(player: player) if let playerLayer = playerLayer { cover.layer.sublayers?.forEach { $0.removeFromSuperlayer() } cover.layer.addSublayer(playerLayer) } NotificationCenter.default.addObserver( self, selector: #selector(restartVideoFromBeginning), name: .AVPlayerItemDidPlayToEndTime, object: player?.currentItem ) player?.play() } override func viewDidLayoutSubviews() { super.viewDidLayoutSubviews() playerLayer?.videoGravity = .resizeAspectFill playerLayer?.frame = cover.bounds.centered(in: cover.bounds) } override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) setupVideoCover() }




备注:内容来源于stack exchange,提问作者Python12492
相关产品推荐
相关产品推荐

