首页 > 解决方案 > 删除排列的子视图时 StackView 不缩小

问题描述

我有一个带有 7 个子视图的垂直堆栈视图。当我删除其中一个子视图时,堆栈视图不会缩小,但已删除视图上方的视图会占用释放的空间。

我努力了

subview.isHidden = true

stackview.removeArrangedSubview(subview)
subview.removeFromSuperView()

堆栈视图是否应该通过向上推已删除子视图下方的所有子视图来自动缩小?

标签: iosswiftuistackview

解决方案


不,它不会缩小,但是当你设置

subview.isHidden = true

distribution如果您设置为,其他视图会占用释放的空间fillEqually,如果您希望它缩小,则挂钩它的高度约束,除了上述行之外

stackH.constant = numberOfRemainingSubviews * viewHeight

推荐阅读