[英]NSLayoutConstraint not working on uibutton and uilabel
我创建了一个uilable和uibutton
@IBOutlet weak var label_one: UILabel!
@IBOutlet weak var btn_one: UIButton!
并设置以下跟踪约束和前导约束
self.btn_one.translatesAutoresizingMaskIntoConstraints=false
let contariants=NSLayoutConstraint(item:self.view,attribute:NSLayoutAttribute.LeadingMargin , relatedBy: NSLayoutRelation.Equal, toItem: btn_one, attribute: NSLayoutAttribute.LeadingMargin, multiplier: 1.0, constant: 20)
let trailingConstraints=NSLayoutConstraint(item: self.view, attribute:NSLayoutAttribute.Trailing, relatedBy: NSLayoutRelation.Equal, toItem: btn_one, attribute:NSLayoutAttribute.Trailing , multiplier: 1.0, constant:20 )
self.view.addConstraint(contariants)
self.view.addConstraint(trailingConstraints)
//但它根本不起作用,并发出以下警告可能至少以下列表中的约束之一是您不想要的约束。 尝试以下操作:(1)查看每个约束,并尝试找出不期望的约束; (2)查找添加了一个或多个不必要约束的代码并进行修复。 (“”,“ UIButton:0x7ff8c84b0b60'Button'(名称:'|':UIView:0x7ff8c85226d0)>”)
将尝试通过打破约束来恢复
在UIViewAlertForUnsatisfiableConstraints上创建一个符号断点,以在调试器中捕获该断点。 列出的UIView的UIConstraintBasedLayoutDebugging类别中的方法也可能会有所帮助。 2015-12-16 10:39:01.918 ConstraintsExample [2635:38168]无法同时满足约束条件。 以下列表中至少有一个约束是您不想要的约束。 尝试以下操作:(1)查看每个约束,并尝试找出不期望的约束; (2)查找添加了一个或多个不必要约束的代码并进行修复。 (“”,“ UIButton:0x7ff8c84b0b60'Button'(名称:'|':UIView:0x7ff8c85226d0)>”,“”,“)
将尝试通过打破约束来恢复
在UIViewAlertForUnsatisfiableConstraints上创建一个符号断点,以在调试器中捕获该断点。 列出的UIView的UIConstraintBasedLayoutDebugging类别中的方法也可能会有所帮助。
您执行错误消息中所说的操作。 您查看它所显示的约束,认真思考,并找出哪里有矛盾的约束。
.xib文件或情节提要中可能有一些约束。
顺便说一句。 “封建主义者”是可怕的。 第一个约束看起来不正确(view.lead = button.lead + 20,这意味着按钮从屏幕左起20个像素?)。 NSLayoutAttribute.LeadingMargin应该只是.LeadingMargin。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.