2012-01-26 14 views
0

NSURLConnectionをトリガーするXMLを解析する必要があります。解析が終了したら、データを受け取った後、ルートビューコントローラを設定します。私の問題は、アプリケーション:didFinishLaunchingWithOptions:は、composeRootControllerメソッドの前に戻り、アプリケーションはルートビューコントローラを見つけることができないため、エラーが発生します。 composeRootControllerが返るまでどのように待つことができますか?didFinishLaunchingWithOptionsはrootcontrollerを見つけません

私のコードは以下の通りです:

ここ
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    [self xmlConnect]; 
    return YES; 
} 

xmlConnect機能がrootcontroller

答えて

0

があなたの

[self composeRootController]; 
を入れて設定しcomposeRootControllerここ

- (void)connectionDidFinishLoading:(NSURLConnection *)connection 
{ 
    //convertim la data a string 
    NSString *receivedDataAsString = [[NSString alloc] initWithData:receivedData encoding:NSUTF8StringEncoding]; 
    NSLog(@"connectionDidFinishLoading %@", receivedDataAsString); 

    //xml parsing 
    xmlParser = [[NSXMLParser alloc] initWithData:receivedData]; 
    [xmlParser setDelegate:self]; 

    self.receivedData = nil; 

    BOOL success = [xmlParser parse]; 

    if(success) 
     NSLog(@"No Errors"); 
    else 
     NSLog(@"Error Error Error!!!"); 

    [self composeRootController]; 
} 

解析するために実装されています10

inside didFinishLaunching ...

そして、composeRootControllerを呼び出してxmlConnectを呼び出してください。

xmlConnectメソッドをアプリケーションデリゲートから移動する必要があります。

+0

@Jaume - この回答が気に入ったら、それを投票してください。ありがとう! – Rayfleck

関連する問題