我有一个包含水平UIStackView
的tableview单元格。其中包含UIImageView
(左侧,100x100尺寸)和垂直UIStackView
(右侧),其中包含4个标签。垂直UIStackView
被约束到UIImageView
的顶部和底部锚点。但是底部约束是“小于或等于”。
我在这些标签上设置text属性,但如果文本为nil,则隐藏该标签。 Stack View将该标签的高度设置为0,它不会出现在堆栈视图中。现在的想法是,如果某些标签被隐藏,剩余标签的组合内在内容大小将定义垂直UIStackView
的高度,并且它将基于“小于或等于”底部约束的高度减小。
但这不起作用。以第二和第四个标签被隐藏的情况为例。第一个标签是正常高度。但是第3个标签一直延伸到UIImageView
的底部。这与我的期望相反,即标签的内在内容大小会更小,标签的UIStackView
会缩小。
我猜测可能需要调整一些优先级才能使其正常工作。整个视图层次结构包含在UITableViewCell
中,并且已应用动态高度,我希望不会导致任何问题。
因此,如果预期的行为是当我隐藏标签时垂直UIStackView
缩小,我必须添加/删除哪些约束或必须设置哪些优先级?