You can do this as follows. Set your table cell’s selection style to UITableViewCellSelectionStyleNone
. This will remove the blue background highlighting. Then, to make the text label highlighting work the way you want, instead of using the default UITableViewCell class, create a subclass of UITableViewCell
and override the default implementation of setHighlighted:animated
with your own implementation that sets the label colors to however you want depending on the highlighted state.
- (void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated
{
if (highlighted) {
self.textLabel.textColor = [UIColor whiteColor];
} else {
self.textLabel.textColor = [UIColor blackColor];
}
}