我想更改滚动视图的宽度。首先,我这样做了:
var scrollWidthConstraint: NSLayoutConstraint!然后设置它:
scrollWidthConstraint = contentView.widthAnchor.constraint(equalToConstant: CGFloat(scrollWidth()))
scrollWidthConstraint.isActive = true然后我想把它改成:
scrollWidthConstraint = contentView.widthAnchor.constraint(equalToConstant: width)
scrollWidthConstraint.isActive = true
contentView.setNeedsLayout()但是,我似乎没有删除旧的约束,我在日志中看到:
"<NSLayoutConstraint:0x6000031d7160 UIView:0x7fc92c808120.width == 1333 (active)>",
"<NSLayoutConstraint:0x6000031fcff0 UIView:0x7fc92c808120.width == 933.1 (active)>"如何删除旧的约束并更新它?
发布于 2019-03-20 22:54:19
这
scrollWidthConstraint = contentView.widthAnchor.constraint(equalToConstant: width)
scrollWidthConstraint.isActive = true
contentView.setNeedsLayout()创建另一个约束,不管您是否将其重新分配给旧约束,您需要
scrollWidthConstraint.constant = width
view.layoutIfNeeded()https://stackoverflow.com/questions/55263739
复制相似问题