[英]How to know which subLayer to remove?
我有以下代碼行,旨在防止子圖層顯示在另一個帖子內容上的問題。 在用戶退出帖子時調用該行被激發的方法。
newBaseP3FolderLayer.layer.sublayers?.remove(at: 1)
但是現在,我認為由於這段代碼,在某些情況下,另一個視頻會突然覆蓋所有其他圖像。
我注意到這僅在子層數為 14 時發生。(這對於高於此的數字也可能是正確的)在發表帖子時打印子層數時我注意到代碼工作正常(對於像 10 或 11 這樣的 vals 和12) 直到子視圖的數量達到 14。
我怎樣才能解決這個問題?
這將是更好的方法
for sublayer in sublayers {
if sublayer.name == "yourLayerName" {
sublayer.removeFromSuperlayer()
}
}
存儲reference
到layer
你想要創建的同時去除,並使用該reference
刪除layer
從superLayer
,即
var yourLayer: CALayer?
view.layer.sublayers?.forEach({ (layer) in
if layer == yourLayer {
yourLayer?.removeFromSuperlayer()
}
})
如果您不想使用圖層名稱,請嘗試記錄以下內容:
NSLog(@"%@",self.playerLayer.player.currentItem.asset);
您將看到以下內容:
AVURLAsset:0x60000063bac0,URL = file:///Temp/Loops/088_JB_HD.mov
然后,您可以確定資產的實際名稱和 URL。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.