Self-sizing table 查看包含标题和详细信息字段的单元格
Self-sizing table view cell with title and detail fields
我正在尝试创建一个 UITableView,其中单元格的大小会自动调整为每个单元格中内容的大小。我已经看到了很多关于此的其他问题,但它们主要处理只有标题标签的单元格。当我只有一个标签时,调整大小有效,但是当我使用具有 "right detail" 样式的单元格时,我又遇到问题了。
This is what my view looks like.
我尝试将标题和详细信息标签都设置为 0 行,这样它们都可以自行调整大小,但出于某种原因,这并没有调整实际 tableView 单元格的大小。
您需要为单元格中的两个标签设置正确的约束。确保您的标题标签对内容视图具有左上约束和上约束,以及对详细信息标签的右约束。确保详细信息标签对内容视图具有顶部、右侧和底部约束。
然后在您的代码中,您需要为每个单元格设置高度。使用此功能。
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
此处 UITableViewAutomaticDimension
将使单元格高度调整为标签的内容高度。
注意:将详细信息标签的 numberOfLines 保留为 0
我正在尝试创建一个 UITableView,其中单元格的大小会自动调整为每个单元格中内容的大小。我已经看到了很多关于此的其他问题,但它们主要处理只有标题标签的单元格。当我只有一个标签时,调整大小有效,但是当我使用具有 "right detail" 样式的单元格时,我又遇到问题了。
This is what my view looks like.
我尝试将标题和详细信息标签都设置为 0 行,这样它们都可以自行调整大小,但出于某种原因,这并没有调整实际 tableView 单元格的大小。
您需要为单元格中的两个标签设置正确的约束。确保您的标题标签对内容视图具有左上约束和上约束,以及对详细信息标签的右约束。确保详细信息标签对内容视图具有顶部、右侧和底部约束。
然后在您的代码中,您需要为每个单元格设置高度。使用此功能。
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
此处 UITableViewAutomaticDimension
将使单元格高度调整为标签的内容高度。
注意:将详细信息标签的 numberOfLines 保留为 0