手动回收 UITableViewCell

Manually recycle UITableViewCell

是否有与dequeueReusableCell相反的方法?我正在为单元格高度计算出列单元格,在计算出它的高度后,我想回收该单元格,以便它可以重新用于显示。

或者我应该只为每个单元格类型实例化一个对象,将其存储在 属性 中,然后改用它们吗?

您可以创建自己的堆栈/队列,然后将您手动出列的所有单元格(例如 cellForRow.. 之外)放入此队列。

cellForRow... 方法内部,您将首先使用 table 视图 dequeue-method,如果此 returns nil,您将使用你自己的队列来检索可重复使用的单元格。只有 none 个 returns 的东西,你才会创建新的单元格。

但请记住,table 视图的 dequeue-method 只有 returns 个单元格,您之前已经在 cellForRow!

中创建了这些单元格

这在iOS10中仍然不可能。如果以后可以使用,我会更新答案。