3

How can I set the delay of my implicit animation in core animation? I'm surprised that there is no kCATransactionAnimationDelay.

Daniel Node.js
  • 6,734
  • 9
  • 35
  • 57

3 Answers3

16

Try this

// Start in 5 seconds
theAnimation.beginTime = CACurrentMediaTime()+5;

CAAnimation objects implement the CAMediaTiming protocol so you have a few properties to play around with in there.

(answer taken from here)

deanWombourne
  • 38,189
  • 13
  • 98
  • 110
6

To the best of my knowledge, you can't. You need to create explicit CAAnimation objects instead to represent your animations if you need this kind of control over it.

Lily Ballard
  • 182,031
  • 33
  • 381
  • 347
2

Since you're doing an implicit animation, would you be better off just using UIView-based animation? It easily allows delays, and unless I'm mistaken, gives you access to exactly the same functionality you find when using implicit Core Animations.

Greg Maletic
  • 6,225
  • 8
  • 54
  • 73
  • not true, only a limited number of things are animatable for a uiview and some don't seem to always work right (such as resizing a frame) – Sam Oct 30 '13 at 19:50
  • 1) I could be wrong, but we were talking about implicit animations, not explicit...and I think those offer the same functionality as is exposed through UIView. 2) It's (maybe) irrelevant, because iOS 7 has greatly expanded the kinds of animation you can do through UIView. – Greg Maletic Oct 30 '13 at 23:59