Comment spécifier un beginTime pour une animation en utilisant CFTimeInterval?
Pour ma compréhension, beginTime peut être utilisé pour dire "hey, départ à 12:00 'o clock". Mais comment pourrais-je dis cela avec une CFTimeInterval type? J'ai pensé que ce n'est rien de plus qu'une sorte de "flottement" de la valeur à spécifier secondes.
Ou quoi d'autre serait alors la différence de la timeOffset propriété est spécifiée dans CAMediaTiming protocole?
Vous devez vous connecter pour publier un commentaire.
Ce que j'ai raté dans les docs: beginTime est en "core animation temps absolu", de sorte que vous avez pour obtenir l'heure actuelle et spécifier le décalage à partir de:
Vous devez d'abord les convertir à la couche de timespace comme suit:
Vous pouvez ensuite régler le
beginTime
par rapport à la couche est maintenant temps. Par exemple, pour faire une animation de commencer en 2s:Vous aurez probablement aussi souhaitez définir le
fillMode
à.backwards
, de sorte que vous pouvez définir à la dernière valeur de la propriété avant d'ajouter de l'animation:Non, ce n'est pas ce que beginTime n'. Il indique une relative heure de début de son parent, de l'animation (par défaut de multiples animations dans un groupe tout à la fois le feu).
De la la documentation:
timeOffset causes qu'il commence à s'animer au niveau de l'image, il serait à la à la le décalage de temps, et quand il atteint la fin il fait une boucle autour de. En d'autres mots, imaginez A,B,C,D,E sont des cadres de l'animation, c'est ce qui se fait dans divers cas, si vous définissez beginTime ou timeOffset pour une valeur égale à quand vous frappez cadre C dans le cas normal.
Je pense que la documentation de CAMediaTiming Protocole est très mauvais. Time Warp dans l'Animation est une explication approfondie de la(re-documentation) de toutes les propriétés de CAMediaTiming Protocole.