CALayer не отображается в UIImageView - PullRequest
1 голос
/ 04 октября 2011

У меня есть UIImageView с уже установленным изображением, и я пытаюсь добавить CALayer в качестве подпредставления. Это работает (количество подслоев увеличивается с 0 до 1), но на экране ничего не происходит. Даже если я попытаюсь установить черный цвет фона слоя или скрыть «Нет» ..

 CALayer*layer=[[CALayer alloc]initWithLayer:anotherUIImageView.layer];

[myUIImageVIew.layer addSublayer:layer];

[[myUIImageView.layer.sublayers objectAtIndex:0] setHidden:NO];
[[myUIImageView.layer.sublayers objectAtIndex:0] setBackgroundColor:[UIColor blackColor]];

Есть идеи?

1 Ответ

5 голосов
/ 04 октября 2011

Установите несколько границ слоя и назначьте цвет, чтобы вы могли видеть его

CALayer* layer = [CALayer layer];
layer.bounds = CGMakeRect(0, 0, 10, 20);
layer.backgroundColor = [[UIColor greenColor] CGColor];
[myUIImageVIew.layer addSublayer:layer];

Кроме того, из документа из [CALayer initWithLayer:]:

Примечание : вызов этого метода в любой другой ситуации приведет к неопределенному поведению. Не используйте этот метод для инициализации нового слоя с содержимым существующего слоя.

...