这是我现在面临的问题:heightForRowAtIndexPath只有一个部分?
我有很多UITableViews,每个都有两个部分(只有一个随时显示,按需)。第一部分有3个单元格,可能需要调整大小。因此,我使用了heightForRowAtIndexPath。
第二部分可能有多达3.000细胞,全部采用44点的默认高度。
我的heightForRowAtIndexPath决定它是处理来自第1部分还是第2部分的单元格,然后测量(第1节)或立即返回默认值(44第2节)。
通过使用这种方法,大表视图需要将显示一小会儿,因为heightForRowAtIndexPath是在这样的情况下,性能问题(比约1.000细胞更多)。
我的问题是: 有什么办法来调整只是在第一部分介绍的3个小区?任何方式可能强制heightForRowAtIndexPath被称为indexPath.section == 0?
如果有任何区别,我使用分组表格视图。
谢谢。
一个'开关case'树是一种更清洁的方法测试'indexPath'节的值并返回所需的高度,但它是相同的想法。 – 2010-07-06 19:46:07
这实际上是它在我的代码中的样子。问题是这是一个非常大的tableview性能打击,虽然我只需要它,因为3个单元格。所以我想知道的是,如果有解决方法。 – 2010-07-06 19:51:55
您可以考虑的另一种方法(如果它适用于您的问题域)不会将此信息放置在UITableViewCell中。你是否考虑过将这些信息作为tableview的头文件显示出来?这将不会被调用几次的高度'heightForRowAtIndexPath',如果它是第一部分,那么它有理由可以这样实现...... – 2010-07-06 20:20:11