IB'de birden fazla kısıtlama seti kurdum ve bazı durumlara bağlı olarak bunlar arasında programlı olarak geçiş yapmak istiyorum. Orada bir var constraintsA
IB yüklü olarak işaretlenmiş hepsi çıkış toplama ve constraintsB
tüm çıkış toplama IB kaldırılır.
İki küme arasında programlı olarak şu şekilde geçiş yapabilirim:
NSLayoutConstraint.deactivateConstraints(constraintsA)
NSLayoutConstraint.activateConstraints(constraintsB)
Ama ... Bunu ne zaman yapacağımı bilemiyorum . Görünüşe göre bunu bir kez yapabilmeliyim viewDidLoad
ama işe yarayamıyorum. Aramayı view.updateConstraints()
ve view.layoutSubviews()
kısıtlamaları belirledikten sonra denedim , ancak boşuna.
Her şeydeki kısıtlamaları ayarlarsam viewDidLayoutSubviews
beklendiği gibi çalıştığını buldum . Sanırım iki şeyi bilmek istiyorum ...
- Neden bu davranışı alıyorum?
- ViewDidLoad'dan kısıtlamaları etkinleştirmek / devre dışı bırakmak mümkün mü?