Tableview单元格没有动态调整高度
Posted
技术标签:
【中文标题】Tableview单元格没有动态调整高度【英文标题】:Tableview cell not dynamically sizing height 【发布时间】:2018-07-05 23:55:49 【问题描述】:我的 TableViewCell 中有一个垂直 StackView,我设置了以下属性:
myTableView.estimatedRowHeight = 100.0
myTableView.rowHeight = UITableViewAutomaticDimension
但即使单元格中视图的总高度大于 100,单元格高度始终设置为 100。如何根据堆栈视图中的内容正确设置单元格大小。有时可能大于或小于 100。
我的单元格包含两个高度相等的堆栈视图,具有前导和顶部约束。它们被设置为按比例填充/填充(对齐/分布)
【问题讨论】:
你能展示你的约束是如何设置的吗? @skladek 是表格视图还是单元格本身?对不起 在单元格上。听起来您的单元格无法根据约束确定自己的高度。 @skladek 当然,更新了我的帖子 @Brejuro 这可能是您的问题。单元不知道它应该有多高,因为它没有得到足够的约束。请记住,视图需要被告知它们的位置和大小。您已通过设置前导、顶部和尾随约束为其指定位置。但是,它需要指定一个大小,设置底部约束即可。 【参考方案1】:单元不知道它应该有多高,因为它没有得到足够的约束。请记住,视图需要被告知它们的位置和大小。您已通过设置前导、顶部和尾随约束为其指定位置。但是,它需要指定一个大小,设置底部约束即可。
由于您已将单元格设置为使用UITableViewAutomaticDimension
,因此您的单元格应该可以扩展和收缩以适应您的内容。如果您的堆栈视图需要 1000 磅的高度来适应其内容,那么如果您将其限制在单元格内容视图的所有四个侧面,它就会知道有多高。如果它只需要 50 磅的高度来适应内容,那么单元格将缩小以适应只有 50 磅高的内容。如果您添加底部约束,您将获得该行为,因为您告诉表格视图让其单元格根据其内容调整大小。
【讨论】:
以上是关于Tableview单元格没有动态调整高度的主要内容,如果未能解决你的问题,请参考以下文章
UITableView:如何知道 TableView 的所有具有动态单元格高度的单元格何时被调整大小?
在tableview ios中使用UILabel的单元格的动态高度
TableView单元格内的TableView,自动调整单元格高度