一、UITableView只更新高度不更新内容

如果一个cell高度要在加载完内容以后才能确定,我们一般的方法是调用reloadIndexPaths方法,但这个方法会迫使UITableView再次调用cellForRowAtIndexPath,导致内容也更新,所以如果只是想更新高度,不更新内容,可以调用:

[self.tableView beginUpdates];
[self.tableView endUpdates];

这两个方法会让所有的cell重新布局,然后重新计算高度。

二、UITableView只更新内容不更新高度

通过UITableView的方法cellForRowAtIndexPath:(注意:不是UITableViewDataSource的代理方法)可以获得指定的cell。这时候你就可以对这个cell更改一些内容了。

相关参考