У меня есть представление, которое имеет CALayer. Когда я создаю CAGradientLayer и применяю его как маску CALayer этого представления, ничего не происходит. Почему?
В -initWithFrame: представления я делаю следующее:
CAGradientLayer *gradient = [CAGradientLayer layer];
gradient.frame = self.bounds;
gradient.colors = [NSArray arrayWithObjects:(id)[[UIColor blackColor] CGColor], (id)[[UIColor whiteColor] CGColor], nil];
//[self.layer insertSublayer:gradient atIndex:0];
self.layer.mask = gradient;
Если я заменю
self.layer.mask = gradient;
на
[self.layer insertSublayer:gradient atIndex:0];
, то я увижу градиент. Это от черного к белому.
В чем хитрость?