-1

クラスで定義した非同期メソッドをテストするために、この回答に従っています。ただし、完了ハンドラーの定義を追加することはできません。何か助けはありますか?

次のように定義されたメソッドを取得しました。

//.h
- (void)loadData;

//.m   
 - (void)loadData{
        NSString *urlString =
    [NSString stringWithFormat:@"www.example.com/json", kResultsLimit ];
    NSURL *url = [NSURL URLWithString:urlString];
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    [NSURLConnection sendAsynchronousRequest:request
                                       queue:[NSOperationQueue mainQueue]
                           completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {

                           }
    }];

完了ハンドラーを loadData メソッド定義に追加したいのですが、.h ファイルと .m ファイルの両方に追加するにはどうすればよいですか?

.h の例:

        - (void)loadData+completionhandler;
4

2 に答える 2

1

.h次のように宣言します- (void)loadDataWithCompletion:(void(^)(id))completion;

次に、そのネットワーク要求の完了ハンドラーでそれを呼び出すことができますcompletion(data);

于 2015-02-12T02:29:18.943 に答える