Swift 更新视图内部视图的高度约束

Swift 更新视图内部视图的高度约束,swift,dynamic,height,constraints,stackview,Swift,Dynamic,Height,Constraints,Stackview,目前,我设置了其中一个视图的高度和宽度约束,稍后将其添加到堆栈视图中,如下所示:(请参考,productsTable是一个UITableView。) 稍后,在ViewWillDisplay中,我想更改productsTable高度,如下所示: productsTable.heightAnchor.constraintEqualToConstant(newHeight).active = true. 尽管如此,在视图中出现约束(更改/更新)后,表视图的大小保持不变。是否有我做错了什么,或者可以采

目前,我设置了其中一个视图的高度和宽度约束,稍后将其添加到堆栈视图中,如下所示:(请参考,productsTable是一个UITableView。)

稍后,在ViewWillDisplay中,我想更改productsTable高度,如下所示:

productsTable.heightAnchor.constraintEqualToConstant(newHeight).active = true.

尽管如此,在视图中出现约束(更改/更新)后,表视图的大小保持不变。是否有我做错了什么,或者可以采取不同的方法来实现所需的效果?

您需要保留对第一次创建的高度约束的引用

let heightConstraint = productsTable.heightAnchor.constraintEqualToConstant(tableHeight)
heightConstraint.active = true
稍后,在ViewWillAppease()中,您可以直接将此约束的常量属性设置为newHeight

heightConstraint.constant = newHeight

您需要保留对第一次创建的高度约束的引用

let heightConstraint = productsTable.heightAnchor.constraintEqualToConstant(tableHeight)
heightConstraint.active = true
稍后,在ViewWillAppease()中,您可以直接将此约束的常量属性设置为newHeight

heightConstraint.constant = newHeight

你应该修改
productsTable.heightAnchor
而不是
productsTable.widthAnchor
?很抱歉,我写这个问题时输入了错别字,但这并不能解决问题。你应该修改
productsTable.heightAnchor
而不是
productsTable.widthAnchor
?很抱歉,当我写问题的时候,那是一个打字错误,但是,是的,那不能解决问题。如果这能解决你的问题,你能把答案投上去吗?谢谢;)嘿,特里,我会的,但很明显,在我赢得至少15%的声誉之前,我是无法接触到的。如果这能解决你的问题,你能投票给我答案吗?谢谢;)嘿,特里,我会的,但很显然,在我赢得至少15岁的声誉之前,我是无法接触到这些的