Q:

Push View Controller from App Delegate

I am trying to present and push to a view controller in another Storyboard file. But I can't get past showing the TabBar, here is the code I have and a screen shot of how I have it set up. 
func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool {
    let rootView = self.window!.rootViewController as! TabBarViewController
    rootView.selectedIndex = 4
    let storyBoard = UIStoryboard(name: "Main", bundle: nil)
    let navVC = storyBoard.instantiateViewControllerWithIdentifier("moreNav") as! UINavigationController
    storyBoard.instantiateViewControllerWithIdentifier("moreView") as! MoreTableViewController
    let vc = navVC.visibleViewController as! MoreTableViewController

    let pdfLockerSB = UIStoryboard(name: "PDFLocker", bundle: nil)
    let pdfvc = pdfLockerSB.instantiateViewControllerWithIdentifier("pdfLockerTable") as! PDFLockerTableViewController

    vc.navigationController?.pushViewController(pdfvc, animated: true)

    return true
}

Any ideas what I am doing wrong? It's a UITabBarController linked to a UINavigationController linked to a UITableViewController.
I have the segue all set up but I'm not sure why it doesn't perform it. Using Push or Perform

A:

try this 
let navVC: UINavigationController =  rootView.viewControllers![4] as! UINavigationController;
let vc = navVC.topViewController as! MoreTableViewController

instead of
let navVC = storyBoard.instantiateViewControllerWithIdentifier("moreNav") as! UINavigationController
let vc = navVC.visibleViewController as! MoreTableViewController

