【问题标题】:SnapKit. Replace storyboard constrains快照套件。替换情节提要约束
【发布时间】:2016-07-09 21:08:01
【问题描述】:

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

示例代码:

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

@IBOutlet weak var button: UIButton!

和约束是

    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_makeConstraints() 方法之前调用button.snp_removeConstraints(),但没有成功。

【问题讨论】:

    标签: ios swift uistoryboard snapkit


    【解决方案1】:

    SnapKit 只删除自己的约束。对于故事板约束,您需要从超级视图中删除视图或使用此 sn-p 清除所有默认约束

    view.removeConstraints(view.constraints)
    

    【讨论】:

    • 谢谢,它有效。澄清的小问题 - 可以在 viewDidLoad 中调用它吗?
    • 在 viewDidLoad 中工作应该没有问题,但如果您遇到任何问题,您可以改用 viewDidLayoutSubviews。
    猜你喜欢
    • 2016-11-16
    • 2018-09-29
    • 2015-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-17
    • 1970-01-01
    • 2014-12-04
    相关资源
    最近更新 更多