iOS - 调整视图层大小以填充 iPhone X Max 背景

Posted

技术标签:

【中文标题】iOS - 调整视图层大小以填充 iPhone X Max 背景【英文标题】:iOS - resize view layer to fill iPhone X Max background 【发布时间】:2019-04-03 14:23:26 【问题描述】:

我已经关注https://***.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()

    

结果:

【问题讨论】:

【参考方案1】:

播放器图层背景默认是透明的。如果您想隐藏蓝色视图,请尝试在播放器图层上设置背景颜色。

playerLayer.backgroundColor = UIColor.black.cgColor

【讨论】:

【参考方案2】:

最后我得到了它:

playerLayer.videoGravity = AVLayerVideoGravity.resize

【讨论】:

以上是关于iOS - 调整视图层大小以填充 iPhone X Max 背景的主要内容,如果未能解决你的问题,请参考以下文章

xcode/iOS:自动调整大小以填充视图 - 显式帧大小是必不可少的吗?

在 iOS 7+ 中将照片大小调整为 5 英寸高 x 4.5 英寸宽

iOS - 需要为不同的 iPhone 调整按钮和图像的大小

iOS UIView drawRect 调整大小动画

iPhone UIView - 调整框架以适应子视图

iPhone - 根据文本调整表格视图的大小