Uso de presentModalViewController con storyboards

Soy bastante nuevo en la progtwigción de iOS y estoy trabajando en una aplicación de iPad que tiene un controller de barra de tabs con 4 controlleres de vista (llamado FirstViewController, SecondViewController, etc.) adjunto. Actualmente, el Controlador de barra de tabs está configurado para ser el punto de inicio pnetworkingeterminado de la aplicación. Quiero poder autenticar al usuario antes de que llegue a ese punto, por lo que agregué otro controller de vista llamado LoginViewController que está flotando solo en el Storyboard.

Lo que quiero hacer es permitir que la aplicación se cargue y en didFinishLaunching, mostrar la página de inicio de session hasta que la authentication esté completa, luego descartarla. He estado buscando durante los últimos días, pero todo lo que he estado intentando ha fallado.

Mi bash más reciente fue

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:[NSBundle mainBundle]]; UINavigationController *loginVC = [storyboard instantiateViewControllerWithIdentifier:@"loginVC"]; loginVC.modalPresentationStyle = UIModalPresentationFullScreen; [self.window.rootViewController presentModalViewController:loginVC animated:YES]; 

Cualquier ayuda sería apreciada. Se comstack y se ejecuta, pero la vista no aparece y realmente confundí por qué sucede esto.

El problema era que estaba intentando instanciarlo como un UINavigationController, cuando en realidad era solo un UIViewController. Llamar a esto en applicationDidBecomeActive en appDelegate.m hizo el truco.

 UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; UIViewController *loginVC = [storyboard instantiateViewControllerWithIdentifier:@"loginVC"]; loginVC.modalPresentationStyle = UIModalPresentationFullScreen; [self.window.rootViewController presentModalViewController:loginVC animated:YES]; 

Debe llamar a "presentModalViewController" desde el ViewController actualmente mostrado, no a la vista que se va a mostrar. Probablemente, algo como esto:

 [self.window.rootViewController presentModalViewController:loginVC animated:YES]; 

En Swift 2, esto es ahora:

 if let loginController: LoginViewController = mainStoryboard.instantiateViewControllerWithIdentifier("StoryboardControllerID") as? LoginViewController { loginController.modalPresentationStyle = .FullScreen self.window?.rootViewController?.presentViewController(loginController, animated: true, completion: { () -> Void in // do stuff! }) }