Вызов viewcontroller другого класса из соединения с неопределенным делегатом NSURLConnection - PullRequest
0 голосов
/ 17 января 2012

Попытка запустить viewcontroller в методе подключения с неопределенным доступом NSUrlConection

// Sprequest.m, унаследованный от 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];
}

этот видеорегистратор не загружается

1 Ответ

2 голосов
/ 17 января 2012
Sprequest.m is inherited from NSObject , its not a viewController subclass so you cant use 

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

внутри Sprequest.m Вы можете получить объект navigationController из приложения appdelegate, например:

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

затем используйте

[((AppDelegate *)[UIApplication sharedApplication].delegate).navigationController pushViewController:dvrObj animated:YES];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...