我正在尋找一種能夠在層次結構中搜索獨特CALayer的通用方法,而無需記住圖層在層次結構中的位置(並使用子圖層和superlayer:方法)。我知道這是可能的UIViews(這使翻轉視圖容易),但它可能爲CALayer?在iPhone中標記CALayers
預先感謝您的幫助
Peyman的
我正在尋找一種能夠在層次結構中搜索獨特CALayer的通用方法,而無需記住圖層在層次結構中的位置(並使用子圖層和superlayer:方法)。我知道這是可能的UIViews(這使翻轉視圖容易),但它可能爲CALayer?在iPhone中標記CALayers
預先感謝您的幫助
Peyman的
道歉。我是一個笨蛋。 CALayer是一個鍵值編碼兼容容器,因此我可以在任何情況下創建任意值(包括標籤)。要創建實例的標籤,我們做的:
[rootLayer setValue:[NSNumber numberWithInt:101] forKey:@"PFtag"];
謝謝
您還可以使用的CALayer的name屬性。
[layer setName:@"myKey"];
來關注一下吧,
- (CALayer *)myLayer {
for (CALayer *layer in [superLayerOfMyLayer sublayers]) {
if ([[layer name] isEqualToString:LabelLayerName]) {
return layer;
}
}
return nil;
}
在斯威夫特,你可以做到這一點
let layer = CAShapeLayer()
layer.name = "\(index)"
然後讓你可以做到這一點
for item in self.layer.sublayers! {
if item.name == "\(index)" {
item.removeFromSuperlayer()
item.removeAllAnimations()
}
}
嗯層。沒有辦法得到一個名稱層以外的所有行走?啊,好吧,這比沒有好! – 2012-10-09 20:10:57
可以使用屬性來避免不必要的設想。有一種方法可以查看它但很高興。 – 2014-09-01 12:02:28