У меня есть подкласс 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;
}
Когда I NSLog
свойство shadowLayer
, координаты и фрейм верны. Это соответствует представлению, которое оно поддерживает.
Я также установил цвет границы и радиус угла на self.layer
, и он отображается правильно. Если я нанесу тень на self.layer
, она появится, но она охватывает все подпредставления моего родителя UIView
.
Любая помощь очень ценится.