我正在使用动画师来实现动画,比如
[[self.view animator] setFrame:newFrame];
但我想在动画完成后运行一个方法或块,如下所示:
[[self.view animator] setFrame:newFrame onComplete:^{
NSLog(@"****");
}];
有没有办法实现它?
你应该使用NSAnimationContext
它completionHandler
:
[NSAnimationContext beginGrouping];
[[NSAnimationContext currentContext] setCompletionHandler:^{
NSLog(@"****");
}];
[[self.view animator] setFrame:newFrame];
[NSAnimationContext endGrouping];
我从 WWDC 视频中找到了另一个解决方案,希望下面的代码对其他人有帮助