func tableView(tableView: UITableView!, heightForRowAtIndexPath indexPath: NSIndexPath!) -> CGFloat {
let cellPrototype: NDCustomTableViewCell = NDCustomTableViewCell()
return cellPrototype.frame.size.height;
}
假设cellPrototype是一个常量,那么它将只执行一个吗?不是heightForRow函数,而是单元原型的初始化。
最佳答案
这将在每次调用函数时生成一个新单元格。在其作用域(两行)内,cellPrototype
将不允许更改(尽管单元格本身可以更改)。
您需要的方法是dequeueReuseableCellWithIdentifier()
。正确的单元配置是一个稍微有点复杂的主题,因此您应该阅读Table View Programming Guide以获得完整的详细信息。
编辑:再考虑一下这个问题,处理这个问题的另一种方法(而不是dequeueReuseableCellWithIdentifier
)是创建一个包含用于查询的原型单元格的属性。