我有一个带有几个初始标签的单元格。标签之一是一个问题。我的应用程序有不同长度的不同问题。因此,我需要我的标签具有动态高度。我想通过自动布局实现这一点。当我使用当前的自动布局运行应用程序时,它不会改变高度(参见图片)。我不确定自己在做什么错。我将标签的行数更改为0,并添加了:
tableView.estimatedRowHeight = tableView.rowHeight
tableView.rowHeight = UITableView.automaticDimension
和
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableView.automaticDimension
}
到我的viewDidLoad(),但是它不会更改标签的高度。奇怪的是,当视图更改为另一个视图时,它将改变高度。查看事物的Youtube链接以查看我在说什么:Youtube video。将视频的速度更改为最慢的速度以查看最佳效果。视频发生在大约0:04秒。
设备上的标签:
自动标签约束:
Bannerview约束:
答案 0 :(得分:1)
tableViewCell
首先根据height
label's
取text
,即 正在加载... < / p>
一旦您收到Questions
的{{1}}响应,以反映Firebase
tableViewCell's
及其content
中的变化,则需要重新加载整个height
,即
tableView
在收到 API响应之后,并在更新tableView.reloadData()
使用的dataSource
之后,调用上述代码。
答案 1 :(得分:0)
添加有关该大小调整标签的超级视图的所有约束。 也使用
label.numberOfLines = 0
label.lineBreakMode = .ByWordWrapping