Swift 程序化自动布局约束的问题
Posted
技术标签:
【中文标题】Swift 程序化自动布局约束的问题【英文标题】:Issue with Swift programmatic auto-layout constraint 【发布时间】:2018-10-20 15:17:53 【问题描述】:我只是在使用
toolBar.topAnchor.constraint(equalTo: self.view.topAnchor, constant: 0).isActive = true
用于设置我的 topAnchor。
但是,当我将常量从 0 更改为实际数字时,控制台会提示我
[LayoutConstraints] 无法同时满足约束。
这个错误。
我在viewDidLoad
中调用此约束,但将其更改为viewWillLayoutSubviews
或其他部分并不能解决问题。
如何解决此错误? 谢谢!
【问题讨论】:
【参考方案1】:因为你创建了另一个,所以你需要编辑当前的
var topCon:NSLayoutConstraint!
topcon = toolBar.topAnchor.constraint(equalTo: self.view.topAnchor, constant: 0)
topCon.isActive = true
然后玩常量
topCon.constant = // anyNumber
【讨论】:
这并不能解决问题我仍然得到 [LayoutConstraints] 无法同时满足约束。 请发布所有上下文 "<0x600002ed0ff0 h="-&-" v="--&" material.toolbar:0x7fa723e09140 uiview:0x7fa723f0f8d0.midx><0x600002ed1180 h="-&-" v="--&" material.toolbar:0x7fa723e09140 uiview:0x7fa723f0f8d0.width><0x600002ed0730 h:>0x600002ed0730>0x600002ed1180>0x600002ed0ff0> <0x600002ed0730 h: :0x7fa723f0f8d0>0x600002ed0730> 【参考方案2】:我只需要把 translatesAutoresizingMaskIntoConstraints = false
【讨论】:
以上是关于Swift 程序化自动布局约束的问题的主要内容,如果未能解决你的问题,请参考以下文章
在 Swift 运行时更改自动布局约束的 UIView 的框架
自动布局,布局约束产生令人费解的结果 UIKit Swift 5