无法从 AVSynchronizedLayer 中删除子层

Can't remove a sublayer from AVSynchronizedLayer

我试图在我的 addLayer 函数中添加一个 CALayer:

@IBAction func addLayer(_ sender: UIButton){
    self.layer = (self.cxeObject?.layer)!
    self.synchLayer = AVSynchronizedLayer(playerItem: self.playerItem!)
    self.synchLayer!.bounds = self.playerView.layer.bounds
    self.synchLayer!.position = self.playerView.layer.position
    self.synchLayer!.addSublayer(self.layer!)
    self.playerView.layer.addSublayer(self.synchLayer!)
}

然后我尝试删除我的 removeLayer 函数中的图层:

@IBAction func removeLayer(_ sender: UIButton) {
    self.layer.removeFromSuperlayer()
}

但是没用!当我尝试这样做时,它起作用了:

self.synchLayer.removeFromSuperlayer()

但我不能这样做,因为我在 self.synchLayer 中有一些子图层。 谁能帮我?谢谢!

我回答了我的问题,当我 运行 我的 iPhone 上的应用程序时,它起作用了。代码工作正常: @IBAction func removeLayer(_ sender: UIButton) { self.layer.removeFromSuperlayer() } 但我不知道为什么。也许,AVSynchronizedLayer 不能在模拟器上运行,但可以在设备上运行。