UITableView自定义大小的单元格(使用UITableViewAutomaticDimension自动计算行高)

一个简单,用途广泛但功能强大的视图,可以使用行和单个列以列表形式显示数据。 用户可以在表视图中垂直滚动项,并可以选择操作和选择内容。

自定格单元

苹果公司推出了自动上浆电池。 使用Autolayout显式地布局UITableViewCells,UITableView会为您处理其余的工作。 行高是自动计算的,默认情况下rowHeight值为UITableViewAutomaticDimension。

在计算自调整大小的单元格时,将使用UITableView属性estimatedRowHeight。

创建自定义大小的表格视图单元格时,需要设置此属性并使用约束来定义

单元的大小。
Apple,UITableView文档

  self.tableView.estimatedRowHeight = 44.0 

请注意,如果要为所有单元格设置动态高度,则不需要 tableView的委托的heightForRowAtIndexPath。 只需在必要时以及重新加载或加载表格视图之前设置以上属性。 但是,您可以通过以下功能设置特定单元格的高度,同时使其他单元格动态化:

迅速

覆盖func tableView(tableView:UITableView,heightForRowAtIndexPath indexPath:NSIndexPath)-> CGFloat {

 切换indexPath.section { 
情况1:
 返回60 
默认:
 返回UITableViewAutomaticDimension 
}
}

目标C

  -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { 
 开关(indexPath.section){ 
 情况1: 
返回60;
 默认: 
返回UITableViewAutomaticDimension;
  } 
}