I had a similar problem because I worked very hard to make sure my cameras never showed any choice (for the chat bubble table style).
So, of course, this fix led to large, large colored stripes on my desk, and I had to find another way to get rid of them.
In your cellForRowAtIndexPath you can set selectedBackgroundView instead of setting selectionStyle, and also enable checkboxes. The view may be the color of your cell, or clearColor, and then nothing will appear. Here is my code:
static dispatch_once_t onceToken; static UIView * selectedBackgroundView; dispatch_once(&onceToken, ^{ selectedBackgroundView = [[UIView alloc] initWithFrame:cell.frame]; selectedBackgroundView.backgroundColor = APP_CELL_BACKGROUND_COLOR; }); cell.selectedBackgroundView = selectedBackgroundView;
source share