如何知道一个CoreAnimation动画何时结束

3

我正在使用核心动画制作一些动画,但是我找不到一种方法来通过通知或事件知道动画块何时完成,就像在UIVIew动画块中一样。

setAnimationDidStopSelector:

如何在核心动画中实现此功能,谢谢任何帮助。

1个回答

7

如果您正在使用CAAnimation实例,请查看其委托的animationDidStop:finished:方法。

CAAnimation * animation = [CAAnimation animation];
animation.delegate = yourDelegate; // could be self, for example.
[yourLayer setAnimation:animation forKey:nil];

在上面的例子中,yourDelegate 应该实现 animationDidStop:finished: 方法以便能够检测动画结束。

如果它是CATransition,会有任何区别吗?我似乎无法调用animationDidStop:finished:。 - Matt Hudson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接