目前,我设置了一个视图的高度和宽度限制,稍后将其添加到堆栈视图中,如下所示:(供您参考,productstable是一个uitableview)。
productsTable.heightAnchor.constraintEqualToConstant(tableHeight).active = true
productsTable.widthAnchor.constraintEqualToConstant(stackWidth).active = true
stackView.insertArrangedSubview(productsTable, atIndex: productsTableIndex)
稍后,在viewwill中,我想将productstable高度更改如下:
productsTable.heightAnchor.constraintEqualToConstant(newHeight).active = true.
尽管如此,在viewwill中的约束出现(更改/更新)之后,表视图仍然保持相同的大小。是否有什么我做错了或可以做的不同,以达到预期的效果?
最佳答案
您需要保留对第一次创建的高度约束的引用。
let heightConstraint = productsTable.heightAnchor.constraintEqualToConstant(tableHeight)
heightConstraint.active = true
稍后,在viewwillappear()中,可以直接将此约束的常量属性设置为newheight。
heightConstraint.constant = newHeight
关于swift - 更新UIStackView内部 View 的高度约束,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35731614/