<p>I'm wondering where the callbacks are (or if there are anything) for animations in a CALayer. Specifically, for implied animations like altering the frame, position, etc. In a UIView, you could do something like this:</p>

<pre><code>[UIView beginAnimations:@"SlideOut" context:nil];
[UIView setAnimationDuration:.3];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(animateOut:finished:context:)];
CGRect frame = self.frame;
frame.origin.y = 480;
self.frame = frame;
[UIView commitAnimations];
</code></pre>

<p>Specifically, the <code>setAnimationDidStopSelector</code> is what I want for an animation in a CALayer. Is there anything like that?</p>

<p>TIA.</p>

I answered my own question. You have to add an animation using
```
CABasicAnimation
```
like so:
```
```
CABasicAnimation* anim = [CABasicAnimation animationWithKeyPath:@"frame"];
anim.fromValue = [NSValue valueWithCGRect:layer.frame];
anim.toValue = [NSValue valueWithCGRect:frame];
anim.delegate = self;
[layer addAnimation:anim forKey:@"frame"];
```
```
And implement the delegate method
```
animationDidStop:finished:
```
and you should be good to go. Thank goodness this functionality exists! :D