Подтвердить что ты не робот

Тестирование CALayers в iPhone

Я ищу общий способ поиска уникального CALayer в иерархии без необходимости запоминать, где находится слой в иерархии (и использовать методы подслоя: и superlayer:).

Я знаю, что это возможно с помощью UIViews (что упрощает просмотр листа), но возможно ли CALayer?

заблаговременно за вашу помощь

Пеймана

4b9b3361

Ответ 1

Вы также можете использовать свойство name для CALayer.

[layer setName:@"myKey"];

Чтобы посмотреть,

- (CALayer *)myLayer {

    for (CALayer *layer in [superLayerOfMyLayer sublayers]) {

            if ([[layer name] isEqualToString:LabelLayerName]) {
                return layer;
            }
    }

    return nil;
}

Ответ 2

Извиняюсь. Я был дураком. CALayer является контейнером, совместимым с кодировкой ключа, поэтому я могу создавать произвольные значения (включая теги) в любом случае. Чтобы создать тег, например, мы делаем:

[rootLayer setValue:[NSNumber numberWithInt:101] forKey:@"PFtag"];

Благодарю вас