的UITableViewController 是iOS開發中相當常用的一個空間了,它的 cell 很早就可以支持自適應高度,或者說是 動態高度。在開發中,如果cell里布局了複雜的內容——比如連圖帶字的一條微博。那麼這個時候動態的自動的高度就顯得很有用了——總不用你自己去計算。
不少人其實還不會用這個動態高度,有的人甚至在使用的時候自己初始化一個新的cell,然後寫入與當前cell相同的內容,獲取它的高度再返回……?♂️
總之,我們現在來看看如何正確配置 tableview 的 cell 高度。
屬性配置
首先,你要給 的TableView 打開自動高度功能:
1 2 |
self.tableView.estimatedRowHeight=88 self.tableView.rowHeight=UITableViewAutomaticDimension |
注意第一行的 88 ,你應該給你一個你所有需要自動高度的 cell 可能的平均值。
去掉自定義高度
如果你在編輯 原型 的過程當中拉開了 cell 的高度——為了方便佈局你肯定會這麼做,所以,注意把它取消勾選:
給 cell 建立能夠推斷高度的佈局
這裡很有意思,你一定要注意,你在 cell 內的佈局如果不合適,那麼 cell 就不能夠根據你的內容來動態推斷需要的高度!
具體要怎麼做呢?按照你以往的經驗,當你的內容能夠根據 content view 的高度自動佈局就 OK 啦,如果你上下改變 cell 的高度而內容無動於衷,那即使你開啟了自動高度,最終 cell 也無法推斷出你需要的高度。
值得一提的東西
如何讓 的UILabel 支持多行?設置它的行數為 0 即可;
如何讓 的UILabel 支持富文本?選擇文本為 attributedText 即可。
延伸閱讀
本文由 落格博客 原創撰寫:落格博客 » UITableViewCell 動態高度 配置
轉載請保留出處和原文鏈接:https://www.logcg.com/archives/2697.html