title: UITableViewCell selection flickers on reload
body: <p>I have a <code>UITableView</code> which I have hooked up to a <code>NSFetchedResultsController</code>. When an object is updated, I use <code>reloadRowsAtIndexPaths</code> to reload the cell.  I want to keep the cell selected while it is reloaded. The below code is how I am reselecting the cell after the update.  It works, but the cell displays unselected for about half a second before becoming selected again and looks bad. <code>self.selectedIndexPath</code> is set in <code>didSelectRowAtIndexPath</code>.</p>
  
  <p>I've also tried setting the cell to selected and highlighted in <code>cellForRowAtIndexPath</code>, but that did nothing.</p>
  
  <p>Does anyone know how to prevent the flickering? I'm using iOS 8.3 BTW.</p>
  
  <pre><code>// Called in controllerWillChangeContent
  [self.tableView beginUpdates];
  
  ...
  
  // Called in didChangeObject
  [self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationNone];
  
  ...
  
  // Called in controllerDidChangeContent
  [self.tableView endUpdates];
  
  if( self.selectedIndexPath ) {
          [self.tableView selectRowAtIndexPath:self.selectedIndexPath animated:NO scrollPosition:UITableViewScrollPositionNone];
  }
  </code></pre>