IOS TableViewCell高度计算

第一种:根据文字内容设置估算高度自动计算

1.自定义cell
2.在cell里添加Label,设置Label上边距和下边距,设置自动换行,宽度用代码设置

contentLabelWCons.constant = UIScreen.mainScreen().bounds.width - 2 * edgeMargin

然后设置

  //高度自动计算
        tableView.rowHeight = UITableViewAutomaticDimension
  //估算高度
        tableView.estimatedRowHeight = 200

第二种:根据文字所在范围,计算

1.自定义cell
2.在cell里添加Label,设置Label上边距和下边距和#宽度约束#,设置自动换行

  //确定范围
       CGSize textSize = CGSizeMake([UIScreen mainScreen].bounds.size.width - 4 * MAXMargin, MAXFLOAT);

  //这里的字体设置要和Xib里边Label设置的字体一致
        CGFloat textH = [self.text boundingRectWithSize:textSize options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName : [UIFont systemFontOfSize:16]} context:nil].size.height;

3.再实现一个代理方法

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    MAXContent *c = self.contents[indexPath.row];
    return c.cellH;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容