title: Custom UITableViewCell width is resized on tableview reloadData
body: <p>I have a UITableView that I am increasing its width through a UIView animation block.</p>
  
  <pre><code>[UIView animateWithDuration:.5 
                       animations:^{
                           CGRect frame = myTableView.frame;
                           frame.size.height += 190;
                           myTableViewView.frame = frame;
                           [[myTableViewView visibleCells] makeObjectsPerformSelector:@selector(setNeedsDisplay)];
                       } 
                       completion:nil];
  </code></pre>
  
  <p>Once this call is completed my subclassed UITableViewCells are redrawn and this delegate method is invoked.</p>
  
  <pre><code>- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell        forRowAtIndexPath:(NSIndexPath *)indexPath
  {
      CGRect frame = cell.frame;
      frame.size.width = tableView.frame.size.height;
      cell.frame = frame;
  }
  </code></pre>
  
  <p>Without this, my UITableViewCells are not drawn to the full width of the UITableView. The problem I am having is when I call [tableView reloadData]. Reload data is invoking the above willDisplayCell call to set the correct frame but when I watch the stack trace for UITableViewCell setFrame: another call is being invoked on all of my cells from a private UITableView call:</p>
  
  <pre><code> -[UITableView(_UITableViewPrivate) _updateVisibleCellsNow:]
  </code></pre>
  
  <p>This call is setting the frame of all my visible UITableViewCells to the original and smaller width of the UITableView. Does anyone have any idea how to keep this from happening so that my cells stay the width of the table view?</p>