У меня есть следующий код, и я не могу заставить его работать.
Сначала я создаю вид со слоем.
UIView *view = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 100)] autorelease];
CAGradientLayer *gradient = [CAGradientLayer layer];
gradient.frame = view.bounds;
gradient.colors = [NSArray arrayWithObjects:(id)[[UIColor blackColor] CGColor], (id)[[UIColor whiteColor] CGColor], nil];
[view.layer insertSublayer:gradient atIndex:0];
Далее мне нужно заменить этот слой. Я попробовал следующее, и это не удалось, потому что я не знаю, как получить доступ к этому слою 0. На данный момент я нахожусь в другой части программы, поэтому я не могу просто вызвать Градиент . Мне нужно как-то вытащить его из зрения .
[view.layer replaceSublayer:0 with:newgradient];
Очевидно, 0 должен быть Старый слой , но я не знаю, как получить к нему доступ.
Спасибо.