Quando posso ativar / desativar restrições de layout?

Configurei vários conjuntos de restrições no IB e gostaria de alternar programaticamente entre eles, dependendo de algum estado. Há umconstraintsA coleção de tomadas, todas marcadas como instaladas no IB, e umaconstraintsB coleção de tomadas, todas desinstaladas no IB.

Posso alternar programaticamente entre os dois conjuntos da seguinte maneira:

NSLayoutConstraint.deactivateConstraints(constraintsA)
NSLayoutConstraint.activateConstraints(constraintsB)

Mas ... eu não consigo descobrirquando fazer isso. Parece que eu deveria conseguir fazer isso de vez em quandoviewDidLoad, mas não consigo fazer isso funcionar. Eu tentei ligarview.updateConstraints() eview.layoutSubviews() depois de definir as restrições, mas sem sucesso.

Eu descobri que se eu definir as restrições emviewDidLayoutSubviews tudo funciona como esperado. Acho que gostaria de saber duas coisas ...

Por que estou recebendo esse comportamento?É possível ativar / desativar restrições do viewDidLoad?

questionAnswers(8)

yourAnswerToTheQuestion