我正在试图弄清楚当我的nsview动画师停止时如何设置回叫。有人知道怎么做吗。
NSRect frame = blob.frame;
frame.origin.x = animationStopX;
[NSAnimationContext beginGrouping];
[[NSAnimationContext currentContext] setDuration:timeToDisappear];
[[blob animator] setFrame:frame];
[NSAnimationContext endGrouping];
答案 0 :(得分:2)
在10.8上,NSAnimationContext
具有completionHandler
属性,您可以将其与块一起使用。
答案 1 :(得分:0)
您可以为frameOrigin动画设置委托。
CAAnimation *moveAnimation = [[blob animationForKey:@"frameOrigin"] copy];
moveAnimation.delegate = self;
[blob setAnimations:[NSDictionary dictionaryWithObject:moveAnimation forKey:@"frameOrigin"]];
[moveAnimation release];
并覆盖结束动画委托方法
- (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag