heightForRowAtIndexPath

heightForRowAtIndexPath

如果使用自定义UITableViewCell,是否需要设置heightForRowAtIndexPath?在我的NIB中,我已经设置了像元高度。

当我超越heightForRowAtIndexPath时,即使将其设置为NIB中定义的高度,也不会显示单元格的内容。

如果不覆盖heightForRowAtIndexPath,则会显示该单元格的内容,但是会溢出,因为默认高度不够大。

最佳答案

如果所有行的高度都相同,则可以设置rowHeightUITableView属性,而不是实现tableView:heightForRowAtIndexPath:。如果行的高度不同,则必须实现tableView:heightForRowAtIndexPath:

这两种方法都不会自动返回您在NIB中定义的单元格的高度,因为在开始使用tableView:cellForRowAtIndexPath:构造单元格之前会调用它们。

要使用NIB中定义的单元格的高度,建议您定义一个名为prototypeCell的 Controller 的自定义属性,该属性将容纳一个永远不会在表上显示的单元格。在tableView:heightForRowAtIndexPath:中,检查prototypeCell是否为nil。如果是这样,请从您的NIB对其进行初始化。然后返回prototypeCell.frame.size.height

关于iphone - 如果使用自定义UITableViewCell,是否需要设置heightForRowAtIndexPath?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2999580/

10-09 07:55