Ios 重新显示视图时,在另一个表的单元格中动态调整表大小

Ios 重新显示视图时,在另一个表的单元格中动态调整表大小,ios,uitableview,Ios,Uitableview,我有一个单元格的UITableView,其中一个单元格包含一个UITableView。选择包含该表的行将在屏幕上显示一个包含项目列表的新视图。用户选择项目列表,然后按“上一步”弹出该视图。父视图查看所选项目的数量,单元格的高度应调整以显示所有选定项目 当视图重新显示时,所列项目会扩展到下面的单元格中。如果我从屏幕上滚动该单元格,然后再返回到该单元格,则该单元格的高度将正确显示所有项目 我已经尝试过几种方法,比如将代码放入主表的视图中,比如[self.view setNeedsDisplay]和[

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

当视图重新显示时,所列项目会扩展到下面的单元格中。如果我从屏幕上滚动该单元格,然后再返回到该单元格,则该单元格的高度将正确显示所有项目

我已经尝试过几种方法,比如将代码放入主表的视图中,比如[self.view setNeedsDisplay]和[self.view setNeedsLayout],但都不起作用

我似乎找不到一种方法,在视图出现后不滚动表格就可以使单元格重新绘制到正确的大小

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

尝试:

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

您当前正在使用什么重新绘制单元格?只是在等待它在离开屏幕后重新绘制自己?或者您正在使用类似于[table reloadData]

在主表视图中,我将在此时调用reloadData。它遍历并调用heightForRowAtIndexPath之类的内容,在这里我可以确定要显示的选定项目的数量,并返回表中行的调整高度。顺便说一句,您建议我将建议的代码放在哪里?如果您调用reloadData,那么我认为它无论如何都会重新加载该单元格。我刚刚在VIEWWILLEANCE和VIEWDIDDEANCE中进行了测试,它在两个地方都适用于我。在调用这些函数之前,请确保您的身高数据是正确的。