【发布时间】:2022-01-06 04:05:59
【问题描述】:
我正在尝试在 UITableViewCell 中添加动态 UITableView,但我无法管理单元格的高度。请帮助我。谢谢。
【问题讨论】:
标签: ios swift uitableview cocoa-touch uikit
我正在尝试在 UITableViewCell 中添加动态 UITableView,但我无法管理单元格的高度。请帮助我。谢谢。
【问题讨论】:
标签: ios swift uitableview cocoa-touch uikit
为tableView分配类
import UIKit
class DynamicHeightTableView: UITableView {
override func layoutSubviews() {
super.layoutSubviews()
if bounds.size != intrinsicContentSize {
self.invalidateIntrinsicContentSize()
}
}
override var intrinsicContentSize: CGSize {
print(contentSize.height)
return contentSize
}
override var contentSize: CGSize {
didSet{
self.invalidateIntrinsicContentSize()
}
}
override func reloadData() {
super.reloadData()
self.invalidateIntrinsicContentSize()
}
}
如图片中所述
在获取或分配数据到表格视图后重新加载 Cell TableView。 在 cell.tableView.reload() 之后,也可以通过委托或本地通知调用主控制器 tableView.reload()
单元格表视图
cell.tableView.rowHeight = UITableView.automaticDimension
cell.tableView.reloadData()
cell.tableView.layoutIfNeeded()
主控制器表视图
self.tableView.reloadData()
【讨论】: