UITableView使用AutoLayout实现动态高度

最早实现Cell动态高度使用单个元素高度计算在相加出现多行UILabel用计算文本所需高度计算,准确度不高。


计算高度代码

后来使用预估高度和AutoLayout手动计算Cell高度并缓存


Controller代码
Cell代码

最后使用预估高度和AutoLayout自动计算Cell高度,是不是很简单,这里有个坑cell高度使用UITableViewAutomaticDimension  sectionHeader  和sectionFooter 高度也需要使用UITableViewAutoMaticDimension  否则类似聊天界面会出现跳屏现象  ,如果出现不换行现象可以设置label的preferredMaxLayoutWidth 最大宽度值 和[label setContentHuggingPriority:UILayoutPriorityRequired forAxis:UILayoutConstraintAxisVertical] 这个方法

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容