iphone - 动画完成后调用带参数的方法

标签 iphone cocoa cocoa-touch

我想在动画完成后调用具有某些参数的方法。

流程是这样的:

-(void) myMethod:(int)val
{
    [self performAnimation];
    [self doSomethingElse:val]; // This should be done after animation completion
}

我认为需要从“setAnimationDidStopSelector”中定义的方法调用“doSomethingElse”方法 - 或者有没有办法让动画 block 直到完成为止?

让“setAnimationDidStopSelector”上调用的方法了解它需要调用的方法及其参数的最佳方法是什么?这可以用选择器来完成吗?或者是通过将方法及其参数存储在类临时变量中并在需要时访问它们来实现此目的的唯一方法?

最佳答案

performAnimation 不会阻塞线程,因此了解动画是否完成的唯一方法是设置选择器,如下所示:

-(void) myMethod:(int)val {
    [self setAnimationDelegate:self];
    [self setAnimationDidStopSelector:@selector(animationDidStop:finished:context:)];
    [self performAnimation];
}

- (void)animationDidStop:(NSString *)animationID finished:(NSNumber *)finished context:(void *)context {
}

关于iphone - 动画完成后调用带参数的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2398705/

相关文章:

ios - 将 UIImage 绘制为 MKMapView 的 subview 与将其绘制为 map View 中的注释相比,对 CPU 的压力更小。为什么?

ios - 为什么我的 tableView 变量返回 nil?

cocoa-touch - 显示键盘时缩小所有 View

iphone - AVPlayer 同步使用 setRate :time:atHostTime:

ios - 读取文档文件夹中的文本文件 - Iphone SDK

cocoa - 从 Cocoa 应用程序与 Google Chrome 书签交互

ios - 如何给 UITableViewController 添加 Accordion 效果?

iphone - TableView :willDisplayHeaderView:inSection: not called when running for iOS 6. 1

iphone - 谁能告诉我如何使用 libHaru 库创建带有文本注释的 PDF

cocoa - C++下创建NSWindow