Эффект внутренней тени на слое UIView?

У меня есть следующий CALayer:

CAGradientLayer *gradient = [CAGradientLayer layer];
gradient.frame = CGRectMake(8, 57, 296, 30);
gradient.cornerRadius = 3.0f;
gradient.colors = [NSArray arrayWithObjects:(id)[RGB(130, 0, 140) CGColor], (id)[RGB(108, 0, 120) CGColor], nil];
[self.layer insertSublayer:gradient atIndex:0];

Я хотел бы добавить к нему эффект внутренней тени , но я не совсем уверен, как это сделать . Полагаю, мне потребуется рисовать в drawRect, однако это добавит слой поверх других объектов UIView, поскольку он должен быть полосой за некоторыми кнопками, поэтому я не понимаю, что делать?

Я мог бы добавить еще один слой, но опять же, не знаю, как добиться эффекта внутренней тени (например:

enter image description here

Помощь приветствуется ...

91
задан runmad 13 May 2012 в 23:30
поделиться