Вы можете попробовать создать пользовательский UIView / UIImageView для выделения с помощью setSelectedBackgroundView:
Вот пример кода, который я использую для настраиваемого градиента в настраиваемой ячейке таблицы:
UIView *selctionView = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, self.bounds.size.width, self.bounds.size.height)] autorelease];
CAGradientLayer *gradient = [CAGradientLayer layer];
gradient.frame = selctionView.bounds;
gradient.colors = [NSArray arrayWithObjects:(id)[[UIColor blueColor] CGColor], (id)[[UIColor redColor] CGColor], nil];
[selctionView.layer insertSublayer:gradient atIndex:0];
[self setSelectedBackgroundView:selctionView];
EDIT:
Я узнал, что вы также можете использовать методы:
[test.layer setBorderColor: [[UIColor redColor] CGColor]];
[test.layer setBorderWidth: 1.0];
для слоя.
обязательно импортируйте QuartzCore.h
остальное за весь просмотр таблицы:
[tableViewController.tableView setSeparatorColor:[UIColor redColor]];