繁体   English   中英

单个IB约束的简单编程修改而不更新

[英]simple programmatic modification of a single IB constraint not updating

编辑:似乎我需要更改乘数而不是常数。

我正在尝试以编程方式在某个事件发生后更改viewDidLoad外部按钮的宽度(如果有关系的话)。

我已将IB中的按钮宽度设置为等于“视图”宽度。

我为按钮的宽度约束创建了一个IB出口:

@IBOutlet weak var imageButtonWidth: NSLayoutConstraint!

然后我尝试了:

 imageButtonWidth.constant = 0.49
    view.setNeedsLayout()

 imageButtonWidth.constant = 0.49
    view.layoutIfNeeded()

imageButtonWidth.constant = 0.49
    self.view.updateConstraints()

我在imageButtonWidth.constant = 0.49处设置了一个断点,它使应用程序崩溃,所以我知道它正在“运行”,只是无法正确激活。

我用过

imageButtonWidth.constant = 0.49
    self.view.updateConstraints()

在另一个问题的viewdidload上没有问题,但是如果调用不在viewdidload之外,则不会被确认。

任何建议将不胜感激!

正确的方法是

 self.view.layoutIfNeeded()

更新约束,但是您可能连接了错误的插座,因为约束的值似乎很低。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM