title: how to correctly remove subviews from UITableViewCell.contentview when cell is re-used
body: <ul>
  <li>I add subviews to each contentView of each cell</li>
  <li>subviews are different for each cell</li>
  <li>I identify a cell by setting its tag</li>
  <li>Since cells CAN BE re-used, I first remove all its subviews before returning the cell in <code>cellForRowAtIndexPath</code></li>
  </ul>
  
  <blockquote>
    <p>[[cell.contentView subviews]
    makeObjectsPerformSelector:@selector(removeFromSuperview)];</p>
  </blockquote>
  
  <p>My problem is:</p>
  
  <ul>
  <li>cell is not rendered correctly when performing above code. The <strong>detailText</strong> is cutoff</li>
  <li>If dont do the above statement, detailText is fine but <strong>wrong</strong> <strong>subviews</strong> are there.</li>
  </ul>
  
  <p>So, how to correctly remove subviews from UITableViewCell.contentview when cell is re-used??</p>
  
  <p>Is there a completionHandlet hook?</p>
  
  <p><em>Should I run above code in background queue and render the cell in main queue? Is that the correct way?</em></p>