1

我有一个单元格的 UITableView,其中一个单元格包含一个 UITableView。选择包含表格的那一行会在屏幕上推送一个带有项目列表的新视图。用户选择项目列表,然后按“返回”以弹出该视图。父视图查看选定项目的数量,并且单元格的高度应该调整以显示所有选定的项目。

发生的情况是,当重新显示视图时,列出的项目会延伸到下面的单元格中。如果我将该单元格从屏幕上滚动出来,然后返回到该单元格,那么该单元格的高度就是正确显示所有项目的正确高度。

我已经尝试了几件事,例如将代码放入主表的 viewWillAppear 中,例如 [self.view setNeedsDisplay] 和 [self.view setNeedsLayout],但它不起作用。

我似乎无法找到一种方法来使该单元格重绘到正确的大小,而无需在视图出现后滚动表格。

是否有其他方法可以在重绘实际出现之前强制重绘?

4

1 回答 1

0

尝试:

NSIndexPath *theIndexPath = [NSIndexPath indexPathForRow:cellRow inSection:cellSection];
NSArray *theIndexPaths = [NSArray arrayWithObject:theIndexPath];
[table reloadRowsAtIndexPaths:theIndexPaths withRowAnimation:NO];

您目前使用什么来重绘单元格?只是等待它在离开屏幕并重新打开时重新绘制自己?或者您使用的是 [table reloadData]; 之类的东西吗?

于 2012-04-12T19:27:39.923 回答