方法1完成后调用方法2

时间:2011-02-06 11:17:55

标签: iphone objective-c cocoa-touch

对于iphone,我可以在方法1完成执行后调用方法2,我们如何完成动画的完成?

1 个答案:

答案 0 :(得分:4)

异步,我想...'如果不是...... 你只需先调用method1然后调用method2 ......

[self method1];
[self method2]; // will be called just when method1 has ended

但如果您需要以异步方式工作,可以查看NSOperationQueue对象 这是一个队列,您可以添加许多方法,它将执行它们,您可以继续在其他地方使用您的代码...... 如果添加2个或更多方法,它们通常会执行togheter(同时),但是你可以告诉对象一次只执行1个方法:

NSOperationQueue *aQueue;
aQueue = [NSOperationQueue new];
NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:self 
            selector:@selector(method1) object:nil];
[aQueue addOperation:operation];
[operation release];

[aQueue setMaxConcurrentOperationCount:1]; //tell aQueue to execute just 1 operation at a time

operation = [[NSInvocationOperation alloc] initWithTarget:self 
            selector:@selector(method2) object:nil];
[aQueue addOperation:operation];
[operation release];

卢卡