Masquer mise en page automatique UIView : Comment obtenir des NSLayoutConstraint de mettre à jour cette une
Je sais comment faire pour modifier une contrainte existante. Mais je voudrais savoir si quelqu'un a trouvé une solution pour obtenir une contrainte sans enregistrer celui-ci comme une propriété.
Solution actuelle pour définir la Contrainte hauteur:
1) enregistrer NSLayoutConstraint dans une variable:
NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:myView
attribute:NSLayoutAttributeHeight
relatedBy:NSLayoutRelationEqual
toItem:nil
attribute:NSLayoutAttributeNotAnAttribute
multiplier:1.0f
constant:20];
[self.view addConstraint:heightConstraint];
2) Régler la constante de la Contrainte sauvé "0,0" ( pour masquer ce point de vue)
[heightConstraint setConstant:200];
Je suis à la recherche d'une solution à ceci:
[myView setConstraint:@"0." forAttribute:NSLayoutAttributeHeight]
OriginalL'auteur Damien Romito | 2014-03-13
Vous devez vous connecter pour publier un commentaire.
Je viens de construire cette Catégorie (https://github.com/damienromito/UIView-UpdateAutoLayoutConstraints) que la mise à jour des contraintes quand vous le voulez:
Ou tout simplement faire pour masquer une UIView avec mise en page automatique:
Oh, je suis tellement désolé, je pousse la catégorie. github.com/damienromito/UIView-UpdateAutoLayoutConstraints.git
Excellent travail, merci à vous!
OriginalL'auteur Damien Romito
UIView a une méthode qui retourne toutes les contraintes qui entravent sa mise en page dans l'une des dimensions:
Alors vous pouvez juste trouver celui qui vous intéresse.
J'ai construit une catégorie, regarde l'EDIT de ma Question.
Grand. Pensez à publier comme une réponse distincte. stackoverflow.com/help/self-answer
n'a pas vous fournir avec toutes les contraintes que l'effet d'une vue. Il vous donne seulement avec les contraintes que d'un point de vue particulier des hôtes. Ils ne peuvent pas effectuer du tout (seulement de ses enfants).
Cette méthode ne doit être utilisée pour le débogage à base de contraintes de mise en page. Aucune application ne doit expédier avec les appels à cette méthode dans le cadre de son opération.
OriginalL'auteur DrummerB