2012-01-17 5 views
0

が//Sprequest.mこのDVRビューのdoesntがNSURLConnection

をロードされますNSObjectの

- (void)connectionDidFinishLoading:(NSURLConnection *)conn {  
    NSLog(@"connectionDidFinishLoading "); 

    if(nStatus == 401) 
    { 
    NSLog(@"called maincontroller to launch dvrview"); 

    MainController *mainview =[[MainController alloc] init]; 
    [mainview reponseFromServer]; 

    }  
} 
//maincontroller.m from viewcontroller 
-(void)reponseFromServer 
{ 
    NSLog(@"response from server - main controller "); 

    dvrView *dvrObj = [[dvrView alloc]initWithNibName:@"dvrView" bundle:nil]; 
    [self.navigationController pushViewController:dvrObj animated:YES]; 
} 

から継承NSUrlConection

のconnectiondidfinishデリゲートメソッドでのViewControllerを起動しようとするとconnectiondidfinishデリゲートから別のクラスのViewControllerを呼び出しますあなたはappdelegateからnavigationControllerオブジェクトを取得することができます Sprequest.m内部

答えて

2
Sprequest.m is inherited from NSObject , its not a viewController subclass so you cant use 

[self.navigationController pushViewController:dvrObj animated:YES]; 

この

((AppDelegate *)[UIApplication sharedApplication].delegate).navigationController 

のように行われ、使用のための準備ができているかconnectiondidfinishする

[((AppDelegate *)[UIApplication sharedApplication].delegate).navigationController pushViewController:dvrObj animated:YES]; 
+0

を使用 – Pinky