У меня есть подкласс UIView
, загруженный из пера, и я не могу нарисовать тень вокруг него. Я уже довольно давно пытаюсь создать тень вокруг всего вида. Я решил разместить его на собственном подслое, чтобы упростить анимацию позже. Вот код:
-(void)awakeFromNib
{
self.clipsToBounds = NO;
// set up the shadow layer
CALayer *shadow = [CALayer layer];
shadow.frame = CGRectMake(self.frame.origin.x, self.frame.origin.y, self.bounds.size.width, self.bounds.size.height);
shadow.shadowColor = [UIColor blueColor].CGColor;
shadow.shadowRadius = 15.0;
shadow.opacity = 1.0;
[self.layer addSublayer:shadow];
// I set this property so I have access to it later to more easily animate it.
self.shadowLayer = shadow;
}
Когда я NSLog
свойство shadowLayer
, координаты и кадр верны. Это соответствует той точке зрения, которую поддерживает.
Я также установил цвет границы и радиус угла на self.layer
, и он отображается правильно. Если я помещаю тень на самослой
, он появляется, но охватывает все подпредставления моего родительского UIView
.
Любая помощь приветствуется.