UITableViewController 是iOS开发中相当常用的一个空间了,它的 cell 很早就可以支持自适应高度,或者说是 动态高度。在开发中,如果cell里布局了复杂的内容——比如连图带字的一条微博。那么这个时候动态的自动的高度就显得很有用了——总不用你自己去计算。
不少人其实还不会用这个动态高度,有的人甚至在使用的时候自己初始化一个新的cell,然后写入与当前cell相同的内容,获取它的高度再返回……?♂️
总之,我们现在来看看如何正确配置 tableview 的 cell 高度。
属性配置
首先,你要给 TableView 打开自动高度功能:
1 2 |
self.tableView.estimatedRowHeight=88 self.tableView.rowHeight=UITableViewAutomaticDimension |
注意第一行的 88 ,你应该给你一个你所有需要自动高度的 cell 可能的平均值。
去掉自定义高度
如果你在编辑 prototype 的过程当中拉开了 cell 的高度——为了方便布局你肯定会这么做,所以,注意把它取消勾选:
给 cell 建立能够推断高度的布局
这里很有意思,你一定要注意,你在 cell 内的布局如果不合适,那么 cell 就不能够根据你的内容来动态推断需要的高度!
具体要怎么做呢?按照你以往的经验,当你的内容能够根据 content view 的高度自动布局就 OK 啦,如果你上下改变 cell 的高度而内容无动于衷,那即使你开启了自动高度,最终 cell 也无法推断出你需要的高度。
值得一提的东西
如何让 UILabel 支持多行? 设置它的行数为 0 即可;
如何让 UILabel 支持富文本?选择文本为 attributedText 即可。
延伸阅读
本文由 落格博客 原创撰写:落格博客 » UITableViewCell 动态高度 配置
转载请保留出处和原文链接:https://www.logcg.com/archives/2697.html