Possible en double:
How to prevent CALayer from implicit animations?Pourquoi changer les valeurs d'un CAGradientLayer provoque une animation "automatique"? Et comment puis-je l'éviter?
J'utilise un CAGradientLayer comme masque de calque pour un UIView. L'intention est d'avoir la possibilité de montrer seulement une partie de l'UIView et, en réagissant à l'entrée de l'utilisateur, de changer la partie de la vue qui est visible en modifiant CAGradientLayer.
Tout cela fonctionne très bien, mais je l'ai rencontré un problème: Pour changer la partie du UIView qui est visible, je modifie les valeurs des propriétés suivantes du CAGradientLayer:
startPoint emplacements endPoint
Je change ces valeurs en dehors d'un bloc d'animation, cependant le changement est animé à l'écran. On dirait qu'il est exécuté avec une animation par défaut, courte (peut-être une seconde, c'est difficile à dire).
Ma question est la suivante: pourquoi le changement est-il animé? et comment puis-je empêcher l'animation? (En fait je voudrais avoir une animation, mais contrôlée par moi-même, pas celle par défaut). En guise d'observation supplémentaire, je sais que toutes ces propriétés (startPoint, endPoint et emplacements) sont signalées comme animables, mais je crois comprendre que cela signifie qu'elles peuvent être définies dans un bloc d'animation pour que le changement soit animé.
Je crois que c'est ce que vous cherchez: http://stackoverflow.com/questions/3884242/how-to-prevent-calayer- à partir d'animations-implicites –