Sommaire

Animation de contraintes

Dans le cas d’une vue positionnée avec Auto Layout, le déplacement du cadre doit s’effectuer en modifiant les contraintes qui définissent ce positionnement.

Les contraintes Auto Layout sont des instances du type NSLayoutConstraint. Elles peuvent être référencées depuis le code d’un View Controller à l’aide de Prises comme pour les contrôles.

Afin de créer une prise vers une contrainte, il suffit d’exécuter un [Ctrl] glissé depuis la contrainte dans le Plan du document vers le code source du View Controller.

images/06EP06.png

L’objet NSLayoutConstraint comporte toutes les propriétés permettant de retrouver l’équation qui compose la contrainte :

  • Le premier élément et son attribut : firstItem et firstAttribute.

  • Le second élément et son attribut : secondItem et secondAttribute.

  • La relation entre les deux éléments : relation, qui peut être .equal, .lessThanOrEqual ou .greaterThanOrEqual.

  • La constante et le multiplicateur : constant et multiplier.

  • Un booléen indiquant si la contrainte est active ou non : isActive.

Dans le cas où la contrainte est liée non pas à un attribut d’un autre élément mais seulement à la valeur de la constante, secondItem est nil et secondAttribute a la valeur notAnAttribute.

Avec une Prise sur une contrainte, on peut changer ses propriétés, l’activer ou la désactiver par exemple. ...