2017-06-28 13 views
0

私はUIViewをサブクラス化しており、その中に制約を追加したいと思います。しかし、私がこれを行うと、私は制約を加えることができません:このラベルの制約が表示されないのはなぜですか?

class A19: UIView { 
let titleLabel : UILabel = { 
    let label = UILabel() 
    label.text = "test" 
    label.textColor = .white 
    label.translatesAutoresizingMaskIntoConstraints = false 
    return label 
}() 

init() { 
    super.init(frame: CGRect(x: 0, y: 0, width: 414, height: 250)) 
    backgroundColor = .black 
    addSubview(titleLabel) 
    titleLabel.topAnchor.constraint(equalTo: topAnchor, constant: 20).isActive = true 
    titleLabel.sizeToFit() 
} 

required init?(coder aDecoder: NSCoder) { 
    fatalError("init(coder:) has not been implemented") 
} 
} 

何が問題なのですか?

編集:だから誰もが私が狂っていないことがわかるように遊び場を置いています! enter image description here

+0

これは大丈夫です...どのようにサブビューとして追加していますか? – Bilal

+0

いいえ、ちょうど遊び場で遊んでいます...私の編集を見てください。 – petaire

+0

この行: 'titleLabel.topAnchor.constraint(equalTo:topAnchor、定数:20).isActive = true'何のトップアンカーに等しい? 「自己」? 'ビュー'?または、他の何か? – dfd

答えて

1

あなたのビューは機能します。

view.layoutIfNeeded() 

行動に自動レイアウトをキックするビューを作成した後:遊び場では、あなたが追加する必要があります。

+0

私の友人はうまくいった。 – petaire

関連する問題