1

Web サーバーを呼び出すメソッドを持つ UIViewController があり、UIViewController を表示する前に、このメソッドが終了するまで待ちたいと思います。

これどうやってするの?

4

3 に答える 3

3

didFinishhttp リクエストなどを介して Web サーバーを呼び出す場合は、イベントのカスタム デリゲート メソッドを設定して、viewControllerここに表示することができます。

ASIHTTPRequestを見てください。

于 2012-11-19T20:20:45.540 に答える
0

ビュー コントローラーを表示する前に、データを要求する必要があります。次に、指定された初期化されたビューコントローラーを使用して、彼のデータを表示します。例 (AFNetworking フレームワークを使用)

[[AFAppDotNetAPIClient sharedClient] getPath:@"stream/0/posts/stream/global" parameters:nil success:^(AFHTTPRequestOperation *operation, id JSON) {
    NSLog(@"JSON: %@", JSON);
    MyModel model = [self parse:json];
    ViewController *vc = [[ViewController alloc] initWithData:model];
    [self.navigationController pushViewController:vc animated:YES];

} failure:nil];
于 2012-11-19T20:28:33.807 に答える
0

グランド セントラル ディスパッチ (GCD) を使用できます。例を次に示します。

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
        //Web Service Calls

        dispatch_async(dispatch_get_main_queue(), ^{
            //UI Stuff
        });
    });
于 2012-11-19T20:27:10.927 に答える