如何创建结构复杂的自动表格视图单元格,其中包含大量的子视图?
例如,表格视图单元格的总高度为220像素: 棕色区域 - 70 px,绿色区域90px,红色 - 10 px和黑色 - 50px。蓝色区域的高度始终与tableview单元格相同。
如何使用autolayout和UITableViewAutomaticDimension将tableview单元格高度减少为130px,方法是删除/隐藏/整个绿色区域?
是否可以使用UITableViewAutomaticDimension实现它并在没有任何旧式方法的情况下纠正约束?
注意:最低版本是iOS 8(但iOS 9+解决方案也可以,我会增加最低版本......)
答案 0 :(得分:1)
我建议使用垂直UIStackView,其中包含其他所有内容。堆栈视图具有很好的功能,它为您设置了包含视图的约束 - 并且当您插入或删除包含的视图时它会得到补偿,这似乎是您所追求的。您可以在每次删除或插入视图时自行设置这些约束,但您的问题意味着您不知道如何执行此操作。 UIStackView 确实知道如何。
答案 1 :(得分:0)
添加约束后,您可以创建连接到绿色部分的高度约束的出口,并将其更改为height = 0(或任何您想要的),然后更改整个单元格的高度。