Ios SnapKit。替换情节提要约束

Ios SnapKit。替换情节提要约束,ios,swift,uistoryboard,snapkit,Ios,Swift,Uistoryboard,Snapkit,如果我在代码中创建UIButton实例,并使用Snapkit框架应用约束,它将按预期工作。但当我尝试将相同的代码应用于@IBOutlet按钮(在故事板中定义)时,什么都没有发生-我看到按钮的位置/大小与故事板上的相同 示例代码: let button = UIButton() self.view.addSubview(button) 或 约束是 button.snp_makeConstraints { make in make.width.equalTo

如果我在代码中创建UIButton实例,并使用Snapkit框架应用约束,它将按预期工作。但当我尝试将相同的代码应用于@IBOutlet按钮(在故事板中定义)时,什么都没有发生-我看到按钮的位置/大小与故事板上的相同

示例代码:

    let button = UIButton()
    self.view.addSubview(button)

约束是

    button.snp_makeConstraints { make in
        make.width.equalTo(150)
        make.height.equalTo(50)
        make.centerX.equalTo(self.view.snp_centerX)
        make.centerY.equalTo(self.view.snp_centerY).offset(-40)
    }

我尝试在
snp\u makeConstraints()方法之前调用
按钮.snp\u removeConstraints()
,但没有成功

SnapKit只删除自己的约束。对于情节提要约束,您需要从superview中删除视图,或使用此代码段清除所有默认约束

view.removeConstraints(view.constraints)

谢谢,它起作用了。小问题-可以在viewDidLoad中调用它吗?在viewDidLoad中工作不应该是问题,但如果遇到任何问题,可以使用viewDidLayoutSubviews。
view.removeConstraints(view.constraints)