2016-07-09 4 views
1

コードでUIButtonインスタンスを作成し、Snapkitフレームワークを使用して制約を適用すると、期待どおりに動作しています。私は(ストーリーボードで定義された)ボタンを@IBOutletするために同じコードを適用しようとする。しかし、何も起こりません - それは絵コンテ...SnapKit。ストーリーボードの制約を置き換えます

サンプルコードにあったと私は同じ位置/サイズのボタンを参照してください。

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) 
    } 

ですの方法の前に、の方法は成功しない。

答えて

2

SnapKitあなたはスーパーからビューを削除するか、すべてのデフォルトの制約

view.removeConstraints(view.constraints) 
+0

感謝をクリアするには、このスニペットを使用する必要がある唯一の自身のconstraints.Forストーリーボードの制約を削除し、それが動作します。小さな明確な質問 - viewDidLoadでこれを呼び出すのは大丈夫ですか? – Set

+0

viewDidLoadで作業しても問題ありませんが、問題が発生した場合は代わりにviewDidLayoutSubviewsを使用してください。 –

関連する問題