UICollectionViewCell z zaokrąglonymi narożnikami I nie działa cień
Chcę, aby moje UICollectionViewCells miały zaokrąglone rogi i cienie, ale natrafiłem na problem, w którym wydaje mi się, że mogę mieć tylko jeden lub drugi, ale nie oba.
Aby zaokrąglić rogi, używam tego kodu w inicjalizacji komórki:
CALayer *layer = [self layer];
[layer setCornerRadius:4];
[layer setRasterizationScale:[[UIScreen mainScreen] scale]];
[layer setShouldRasterize:YES];
Aby dodać cień, używam tego kodu w inicjalizacji komórki:
CALayer *layer = [self layer];
[layer setMasksToBounds:NO];
[layer setRasterizationScale:[[UIScreen mainScreen] scale]];
[layer setShouldRasterize:YES];
[layer setShadowColor:[[UIColor blackColor] CGColor]];
[layer setShadowOffset:CGSizeMake(0.0f,0.5f)];
[layer setShadowRadius:8.0f];
[layer setShadowOpacity:0.2f];
[layer setShadowPath:[[UIBezierPath bezierPathWithRoundedRect:self.bounds cornerRadius:layer.cornerRadius] CGPath]];
Aby wypróbować zaokrąglone rogi i cień, używam tego kodu w inicjalizacji komórki:
CALayer *layer = [self layer];
[layer setMasksToBounds:NO];
[layer setCornerRadius:4];
[layer setRasterizationScale:[[UIScreen mainScreen] scale]];
[layer setShouldRasterize:YES];
[layer setShadowColor:[[UIColor blackColor] CGColor]];
[layer setShadowOffset:CGSizeMake(0.0f,0.5f)];
[layer setShadowRadius:8.0f];
[layer setShadowOpacity:0.2f];
[layer setShadowPath:[[UIBezierPath bezierPathWithRoundedRect:self.bounds cornerRadius:layer.cornerRadius] CGPath]];
ale powoduje to tylko cień.
Czy to błąd, czy robię coś źle?