Ben constraintEqualToAnchor()
kullanarak AutoLayout kısıtlamalarıyla bir görünümü ayarlamak için deneyin:Otomatik Düzenleme kısıtlamaları constraintEqualToAnchor() kullanıldığında ayarlandıktan sonra nasıl değiştirilir?
override func viewDidLoad() {
super.viewDidLoad()
let myView = UIView()
myView.backgroundColor = UIColor.orangeColor()
myView.translatesAutoresizingMaskIntoConstraints = false
view.addSubview(myView)
myView.leftAnchor.constraintEqualToAnchor(view.leftAnchor).active = true
myView.trailingAnchor.constraintEqualToAnchor(view.trailingAnchor).active = true
myView.topAnchor.constraintEqualToAnchor(view.topAnchor).active = true
myView.bottomAnchor.constraintEqualToAnchor(view.bottomAnchor).active = true
/******************************************/
/* I try to change one of the constraints */
/******************************************/
myView.leftAnchor.constraintEqualToAnchor(view.rightAnchor, constant: -100).active = true
}
, çok kısıtlı birini değiştirmek deneyin. Ben o iş düşündüm ama constraintEqualToAnchor()?
kullanarak, onları belirledik sonra sonra kısıtlamayı değiştirmek için doğru yolu nedir zaman konsol günlüğüne
"<NSLayoutConstraint:0x7fb53a5180d0 H:|-(0)-[UIView:0x7fb53a5190b0](LTR) (Names: '|':UIView:0x7fb53a519240)>",
"<NSLayoutConstraint:0x7fb53a51f660 H:[UIView:0x7fb53a519240]-(-100)-[UIView:0x7fb53a5190b0](LTR)>",
"<NSLayoutConstraint:0x7fb53a711ee0 'UIView-Encapsulated-Layout-Width' H:[UIView:0x7fb53a519240(414)]>"
bazı hata veriyor?
'önce değiştirmeden önce (son satır), ama yine de başarısız olur. Sanırım burada bir yanlış anlaşılma var ... –
Kısıtlama referansını tutmaya ve daha sonra sabitleri doğrudan ayarlamaya çalıştınız mı? Görünüşe yeni sınırlamalar uygulayamazsınız, yoksa kısıtlı bir hale gelecektir. –
@LucasDerraugh Düzeni çapalarla nasıl yapacağımı bilmiyorum. Bana cevabın kodunu gösterebilir misin? –