Comment puis-je faire pivoter un UIImageView par rapport à n'importe quel point (autre que son centre)?
Par défaut, une UIImageView va tourner uniquement autour de son centre. Comment puis-je le faire tourner sur tout autre point dans l'image?
source d'informationauteur
Vous devez vous connecter pour publier un commentaire.
Une façon de le faire est par la modification de la anchorPoint de la UIImageView de la couche sous-jacente et la rotation. Vous pouvez changer le point de rotation à l'aide de quelque chose comme ce qui suit:
anchorPoint est définie en termes de position relative à l'intérieur de la couche. Qui est, (0,0) est le coin supérieur gauche de la couche (sur l'iPhone, où UIView couches ont renversé les coordonnées Y) et (1,1) est en bas à droite.
Le déplacement de la anchorPoint peut déplacer votre image, de sorte que vous pourriez avoir besoin d'ajuster sa position par la suite.
Pour faire pivoter le calque de l'image au sujet de notre nouveau point d'ancrage, vous pouvez modifier la CATransform3D structure de la couche à l'aide de quelque chose comme ce qui suit:
Cet exemple effectue une rotation progressive de 60 degrés sur le point d'ancrage.
Toutes les modifications d'une couche sont animés par défaut. Vous pouvez désactiver cette animation en joignant vos modifications de ces propriétés dans un CATransaction comme suit: