0

AFHTTPRequestOperationリクエスト操作が完了したときにGCDブロックを呼び出すのが好きです。代わりにメソッドセレクターを呼び出す方法はありますか?ASIHTTPRequestアプリをAFNetworkingに移行していますが、アプリはブロックではなくセレクターを中心に構築されています。

4

2 に答える 2

3

完了ブロック内でセレクターを呼び出すことができます。

AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:urlRequest
        success:^(NSURLRequest *completedURLRequest, NSHTTPURLResponse *response, NSDictionary *json) {
            [self callMyCustomSuccessMethod:json];
        }
        failure:^(NSURLRequest *errorRequest, NSHTTPURLResponse *response, NSError *error, id JSON) {
            [self callMyCustomErrorMethod:error];
        }];
[operation start];
于 2012-11-05T15:59:45.623 に答える
2

セレクターベースのコールバックをサポートしているかどうかはわかりませんAFHTTPRequestOperationが、セレクターへの呼び出しをブロックで簡単にラップできます。

success:^(AFHTTPRequestOperation *operation, id responseObject) {
   [myDelegate onSuccess:operation];
}

これは、次のように宣言されたコールバックメソッドで機能します。

- (void)onSuccess:(AFHTTPRequestOperation*)operation;
于 2012-11-05T16:00:18.740 に答える