首页 > 解决方案 > Swift - 为什么在调试视图层次结构中看不到 CALayer 图像

问题描述

我有一个在CALayer. 一切正常,但是当我转到 时Debug View HierarchyCALayer播放视频的 总是显示为空白。

CALayer为什么我看不到里面可见的视频帧Debug View Hierarchy

在此处输入图像描述

class AVPlayerView: UIView {

    var playerLayer: CALayer?

    override func layoutSublayers(of layer: CALayer) {
        super.layoutSublayers(of: layer)
    
        playerLayer?.frame = self.bounds
    }
}

lazy var avPlayerView: AVPlayerView = {
    let playerView = AVPlayerView()
    playerView.tag = 2
    return playerView
}()

func setPlayerAndPlayerLayer(url: URL) {

    let asset = AVAsset(url: url)
    playerItem = AVPlayerItem(asset: asset)
    player = AVPlayer(playerItem: playerItem)
    contentView.addSubview(avPlayerView)
    avPlayerView.frame = self.bounds
    playerLayer.frame = avPlayerView.bounds
    avPlayerView.layer.addSublayer(playerLayer!)
    avPlayerView.playerLayer = playerLayer
    avPlayerView.layoutIfNeeded()
}

标签: iosswiftavfoundationavplayercalayer

解决方案


推荐阅读