title: UITableViewCell text label jumps on table row animation
body: <p>I have a simple expanding table view cell that grows by changing the height returned in <code>tableView:heightForRowAtIndexPath:</code>:</p>
  
  <pre><code>- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
      CGFloat height = [tableView rowHeight];
  
      if (indexPath == self.descriptionCellIndexPath) {
          if (self.descriptionCellExpanded) {
              height = self.descriptionCellExpandedHeight;
          }
  
          height += UA_DEFAULT_PADDING; // 10 pixels
      }
  
      return height;
  }
  </code></pre>
  
  <p>and I set the height on tap:</p>
  
  <pre><code>- (void)expandDescriptionRowWithIndexPath:(NSIndexPath *)indexPath {    
      if (!self.descriptionCellExpanded) {
          UAAudioExpandingDescriptionTableViewCell *cell = (UAAudioExpandingDescriptionTableViewCell *)[self.tableView cellForRowAtIndexPath:indexPath];
          CGFloat height = [cell expandedHeight];
  
          self.descriptionCellExpanded = YES;
          self.descriptionCellExpandedHeight = height;
          [self.tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];
      }
  }
  </code></pre>
  
  <p>The heights of both the collapsed and the expanded cells are correct, and the text is rendered correctly in the right position, but I am seeing a problem where the text label jumps on animation. Here is a gif of the problem with slow-motion animations turned on:</p>
  
  <p><img src="https://i.stack.imgur.com/cOewq.gif" alt="enter image description here"></p>
  
  <p>As you can see, the cell is correctly laid out before and after the animation, just not during. The text label is a simple <code>UITableViewCellStyleDefault</code> with no customizations on frame or position other than <code>separatorInset</code>.</p>
  
  <p>How can I prevent the <code>textLabel</code> from jumping up upon animation?</p>