我有UITableViewCell
我需要在用户输入时调整大小。单元格有一个UITextView
作为子视图。
在heightForForWowAtIndexPath中,我需要检查当前单元格是否为零或已初始化。
如果它为零,我会根据字符串属性中的文本计算其高度。
如果它不是nil(即初始化),我希望它检索单元格子视图的text属性(我知道如果单元格被初始化,我可以访问它。)
如何在heightForRowAtIndexPath:
内检查UITableViewCell是否为零?我试过
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
if ([overviewTableView cellForRowAtIndexPath:indexPath] !=nil)
{ NSLog(@"YEEHAW!");
}
}
但它会导致错误(可能是因为cellForRowAtIndexPath:
期望初始化单元格,而不是nil)。另外,我注意到cellForRowAtIndexPath:
调用heightForRowAtIndexPath:
(导致递归循环)。
我在网上看到过很多“替代品”,但我只是想知道这种方法是否有用(或者根本没有效果)。
提前致谢!
答案 0 :(得分:5)
您可以检查感兴趣的细胞的indexPath
是否可见:
if ([[overviewTableView indexPathsForVisibleRows] containsObject:indexPath])
{
//Do something here
}
希望这有帮助!