Ios 从AppDelegate DidReceiveMotonification导航到某个ViewController-swift

Ios 从AppDelegate DidReceiveMotonification导航到某个ViewController-swift,ios,xcode,swift,uiviewcontroller,Ios,Xcode,Swift,Uiviewcontroller,我将TabBarController作为初始视图(情节提要标识主视图)(类UITabBarController) 然后是NavigationController(故事板id=ViewController)(类UINavigationController) 然后是我的ViewController(故事板id=视图)(类ViewController) 然后是我的详细信息(故事板id=StoryDetails)(类详细信息) 我想从AppDelegate.swift导航到Details.swift u

我将TabBarController作为初始视图(情节提要标识主视图)(类UITabBarController) 然后是NavigationController(故事板id=ViewController)(类UINavigationController)

然后是我的ViewController(故事板id=视图)(类ViewController)

然后是我的详细信息(故事板id=StoryDetails)(类详细信息)

我想从AppDelegate.swift导航到Details.swift uiviewcontroller

func application(application: UIApplication,  didReceiveRemoteNotification userInfo: [NSObject : AnyObject],  fetchCompletionHandler completionHandler: (UIBackgroundFetchResult) -> Void) { 
let storyboard = UIStoryboard(name: "Main", bundle: nil)
        if let tabViewController = storyboard.instantiateViewControllerWithIdentifier("StoryDetails") as? UITabBarController {
            window!.rootViewController!.presentViewController(tabViewController, animated: true, completion: nil)
        }
但这是行不通的

非常感谢您的帮助!(:


此代码显示视图,但没有导航控制器或选项卡栏控制器

控制台向您显示了什么消息标识符将是
“StoryDetails”
而不是
“Details”
如果您包含的所有内容都是正确的。抱歉,我更改了问题,我将StoryDetails作为标识符。它只是像普通一样加载初始控制器,让storyboard=UIStoryboard(名称:“Main”,bundle:nil)让detail=storyboard.InstanceeviewControllerWithiIdentifier(“StoryDetails”)self.window?.rootViewController!.presentViewController(详细信息,动画:true,完成:nil)此代码显示视图,但没有导航控制器或选项卡栏控制器。我删除了if let,并选中了打印(tabviewcontroller)出现nil@Knight0fDragon..当你展示视图控制器时,控制台应该给你一条消息解释它为什么失败,如果没有,那么我会检查窗口是否为nil
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let detail = storyboard.instantiateViewControllerWithIdentifier("StoryDetails") 
self.window?.rootViewController!.presentViewController(detail, animated: true, completion: nil)