3 回答
TA贡献1775条经验 获得超11个赞
通过xib或storyboard创建您的单元格。给出它的出口内容。现在在CellForRowAtIndexPath中调用它。例如。如果要根据Comment的标签文本设置单元格高度。 在此输入图像描述
所以设置你的commentsLbl.numberOfLine = 0;
所以设置你的commentsLbl.numberOfLine = 0;
然后在ViewDidLoad中
self.table.estimatedRowHeight = 44.0 ;
self.table.rowHeight = UITableViewAutomaticDimension;
现在
-(float)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
return UITableViewAutomaticDimension;}
TA贡献1784条经验 获得超2个赞
这里的许多答案都不尊重桌子的变化或太复杂。使用autolayout时,使用UITableView正确设置的子类intrinsicContentSize是一个更容易的解决方案。不需要高度限制等。
class UIDynamicTableView: UITableView
{
override var intrinsicContentSize: CGSize {
self.layoutIfNeeded()
return CGSize(width: UIViewNoIntrinsicMetric, height: self.contentSize.height)
}
override func reloadData() {
super.reloadData()
self.invalidateIntrinsicContentSize()
}
}
UIDynamicTableView在接口构建器中设置TableView的类并观察魔法,因为此TableView将在调用后更改其大小reloadData()。
- 3 回答
- 0 关注
- 648 浏览
添加回答
举报