1

我有一个 UITableView,它显示来自各种社交网络的更新帖子。我有自定义 UITableViewCell 子类,里面有一个自定义 UIView,它负责绘制所有标签和图像,类似于 Apple 在这里描述的方式:http: //developer.apple.com/library/ios/#documentation/UserExperience/概念/TableView_iPhone/TableViewCells/TableViewCells.html#//apple_ref/doc/uid/TP40007451-CH7-SW18

在这个视图的 -layoutSubviews 调用中,我找到了各种标签所需的大小,并相应地设置了它们的框架。然而,在滚动一点之后,很明显,当一个单元格被回收时,-layoutSubviews 没有被调用,导致一些单元格的标签框没有设置足够大来显示它们的内容。当将我的数据对象通过单元格传递到自定义视图时,我调用 [self setNeedsDisplay],我相信这会导致单元格调用 -layoutSubviews。

我如何才能最好地确保标签的大小适合发送给他们的内容?

4

1 回答 1

1

如果要强制布局,请将setNeedsLayout(不是setNeedsDisplay)发送到视图。听起来您需要在退回牢房之前发送[cell setNeedsLayout]您的信息。tableView:cellForRowAtIndexPath:

于 2012-08-17T17:54:57.050 回答