Как сделать градиентный фон в UITableViewCell в iOS?

Я воспользовался ниже, чтобы использовать CAGradientLayer для создания градиентного фона в UITableViewCell.

http://cocoawithlove.com/2009/08/adding-shadow-effects-to-uitableview.html

Помимо этого урока, есть ли другие ресурсы в этой теме?

Спасибо.

Ответ 1

Всегда удивительный Рэй Вендерлих сделал учебник по изменению UITableViewCells и включает в себя градиент.

http://www.raywenderlich.com/2033/core-graphics-101-lines-rectangles-and-gradients

Если вы хотите быстро и быстро, вот какой-то код:

//include #import <QuartzCore/QuartzCore.h> in the header…

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

 if (cell == nil) {
        cell = [[DayCalendarCellView alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
        CAGradientLayer *gradient = [CAGradientLayer layer];
        gradient.frame = cell.bounds;
        gradient.colors = [NSArray arrayWithObjects:(id)[[UIColor whiteColor]CGColor], (id)[[UIColor redColor]CGColor], nil];
        [cell.layer addSublayer:gradient];
    }        
    return cell;
}

Вы можете изменить цвета, но это даст вам хорошую идею...

Удачи!

Ответ 2

Создайте 1px изображение высоты X.

добавить объект UIView в ячейку в методе cellForRowAtIndexPath.

colorWithPatterImage метод uicolor в UIView setbackgroundcolor method.

Ответ 3

Следуйте за ответом Джейкоба и установите цвет фона для UIButton или любого вида:

[button.layer insertSublayer:gradient atIndex:0];

вместо:

[button.layer addSublayer:gradient];

Ответ 4

Перонально я создавал бы градиентное изображение в Photoshop или gimp, а затем использовал бы это как фон. Должно работать нормально, пока ячейки имеют предсказуемый размер.