如何在其中使用UIStackView自定义UITableViewCell的大小
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在其中使用UIStackView自定义UITableViewCell的大小相关的知识,希望对你有一定的参考价值。
我无法在里面用UITableViewCell
实现自我尺寸UIStackView
。
对于UITableViewCell
我正在做这样的事情:
在代码我这样做:
override func viewDidLoad() {
super.viewDidLoad()
self.tableView.estimatedRowHeight = 80
}
但是当我运行应用程序时,UITableViewCell
s不会调整大小:
我怎么能错过让UITableViewCell
自我调整内部的UIStackView
?
你有多线标签吗?如果是这样,请确保将IB中的lines属性设置为0而不是1。
堆栈顶部和底部。
如果不这样做,请检查以下内容:
override func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
override func tableView(tableView: UITableView, estimatedHeightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
return UITableViewAutomaticDimension
}
使自定义单元格的自动布局在UITableViewCell上工作的技巧是确保您有限制来固定所有侧面的每个子视图 - 也就是说,每个子视图应该具有前导,顶部,尾部和底部约束。然后,子视图的固有高度将用于指示每个单元格的高度。
这是a nice tutorial将帮助您完成它。
尝试固定堆栈视图本身。请记住,stackView有责任同等空间,均匀分布等,因此它需要在自身和superView之间使用约束来计算所有这些。
这是一个apple explanation。
HTH
细胞大小调整正常。您的问题是您为堆栈视图设置了固定的高度。
水平堆栈视图中的视图将其height
设置为64
,最有可能将其标准优先级设置为1000
。此Stack View最有可能将其分布设置为Fill
。你基本上告诉Stack View,包含的图像必须用64
的高度填充堆栈视图。这也将堆栈视图限制为64
,并且除了View之外还有垂直堆栈视图。如果希望View旁边的垂直堆栈视图大于Center
,请将包含View的水平Stack View的分布更改为64
。
以上是关于如何在其中使用UIStackView自定义UITableViewCell的大小的主要内容,如果未能解决你的问题,请参考以下文章