码迷,mamicode.com
首页 > 其他好文 > 详细

CoreAnimation confusion: CATransaction vs CATransition vs CAAnimationGroup?

时间:2017-04-18 23:44:29      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:get   different   default   .com   which   mat   setting   describe   basic   

http://stackoverflow.com/questions/14042755/coreanimation-confusion-catransaction-vs-catransition-vs-caanimationgroup

CATransaction and CATransition are indeed different beasts...

It seems that the missing bit in your understanding is about CATransaction; once you get that, then maybe all the pieces will fall into place by themselves.

CATransaction is always created every time you have a Core animation going on.

Every modification to a layer is part of a transaction. CATransaction is the Core Animation class responsible for batching multiple layer-tree modifications into atomic updates to the render tree.

(source)

What happens is that if you do not specify one explicitly, then an implicit CATransaction is created for you.

You can create an explicit transaction (by means of [CATransaction begin/commit]) to tune several parameters of an animation, like whether default animations should be used, how long they are etc. Those are all described in CATransaction reference.

Explicit transactions are particularly useful when setting the properties of many layers at the same time (for example, while laying out multiple layers), temporarily disabling layer actions, or temporarily changing the duration of resulting implied animations.

So, resuming it all, CATransaction is the "big umbrella" under which a core animation animation is run, wether it is a CABasicAnimation, a CATransition, or group animation. It allows you to set some general parameters affecting the way the animation/transition takes place and if you do not provide one, a default (implicit) one is used.

CoreAnimation confusion: CATransaction vs CATransition vs CAAnimationGroup?

标签:get   different   default   .com   which   mat   setting   describe   basic   

原文地址:http://www.cnblogs.com/feng9exe/p/6731081.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!