0

我是一个新的iOS开发人员,所以这个问题可能很傻,但我不知道如何解决这种问题。有人可以给我一些提示。

在下面的代码中,我使用 AFNetworking 类,并尝试打印 1,2,3,但我猜setCompletionBlockWithSuccess有一个异步机制让我的代码总是打印 1,3,2。

那么我应该如何打印 1,2,3 呢?

AFHTTPRequestOperation *operation=[[AFHTTPRequestOperation alloc] initWithRequest:request];

NSLog(@"1");


       [operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
           NSLog(@"2");

                 } failure:^(AFHTTPRequestOperation *operation, NSError *error) {

               NSLog(@"2");

                        }
        ];

[operation start];

NSLog(@"3");
4

1 回答 1

1

setCompletionBlockWithSuccess:是一种异步方法。您传递给该方法的块将在异步方法完成后被调用。您可能还想阅读块编程:http: //developer.apple.com/library/ios/#documentation/cocoa/Conceptual/Blocks/Articles/00_Introduction.html

于 2013-04-11T06:25:52.957 回答