UITableViewCell:原型单元格的自定义行高

Bra*_*das 22 xcode row-height uitableview

在我的storyboard文件中,我在UITableView中设计了多个原型单元.每个单元都有自己独特的Cell Identifier.

根据节和行,我将方法中的一个原型单元格取消 - tableView:cellForRowAtIndexPath:

对于大多数原型单元,我没有改变行高.在我的故事板上,它们的高度似乎取决于UITableView的"Size Inspector"下的"Row Height"属性.

对于一个原型单元格,我通过特定UITableViewCell的"Size Inspector"下的属性"Row Height"更改了高度.还会选中"自定义"复选框.

在我的故事板上,这似乎运作良好.但是在运行时,当我的单元格出列并添加到TableView时,所有单元格都会获得默认的行高.

现在,我知道方法tableView:heightForRowAtIndexPath:这在其他帖子中提到但是使用起来似乎有点奇怪,因为我已经在我的故事板中设置自定义行高.

有人知道为什么这个房产不起作用吗?这个属性是否可以在不同情况下使用?

谢谢

enr*_*eas 18

如果您想在Xcode 5中使用Interface Builder来更改表视图中没有代码的行的高度,您可以在两个地方执行此操作:

  • 选择表视图,显示" 大小"检查器,然后在" 表视图大小"部分的" 行高"中键入它 .

默认行高

  • 选择原型单元格,显示" 大小"检查器,在" 表视图大小"部分中选中" 自定义",然后在"关联文本"字段中键入行高.

自定义行高

可能是你正在使用第二种方法吗?尝试使用第一种方法设置表视图中所有行的默认高度,第二种方法告诉Interface Builder有关异常的信息.


Mar*_*n R 16

heightForRowAtIndexPath显示单元格之前,即在cellForRowAtIndexPath调用之前调用(对于表的每一行).这是计算底层滚动视图,滚动指示器等的布局所必需的.

  • 不,单元格确实具有您指定的高度.但细胞的高度不用于*定位*细胞.因此,如果单元格的高度大于"heightForRowAtIndexPath"返回的高度,则单元格将与下一个单元格重叠. (6认同)