导航/ TabBarController消失

时间:2015-11-01 11:18:59

标签: ios swift uiapplication 3dtouch

我在AppDelegate中使用此代码,以便在您启动之前长按应用程序时创建快捷方式。

func application(application: UIApplication, performActionForShortcutItem shortcutItem: UIApplicationShortcutItem, completionHandler: (Bool) -> Void) {
    if(shortcutItem.type == "com.skalstad.addStuff")
    {
        let sb = UIStoryboard(name: "Main", bundle: nil) 
        let add =  sb.instantiateViewControllerWithIdentifier("AddTableViewController") as! AddTableViewController

        let root = UIApplication.sharedApplication().keyWindow?.rootViewController

        root?.presentViewController(add, animated: false, completion: {() -> Void in


            completionHandler(true)


        })
    }
}

当我打开快捷方式时,viewController为全屏,无NavigationControllerTabBarController。有同样问题或有解决方案的人?

1 个答案:

答案 0 :(得分:0)

您正在以模态方式呈现视图控制器,这意味着没有标签栏控制器和导航控制器。

如果您想查看其中任何一个,您可以use a segue programatically(请参阅该文档的“以编程方式启动Segue”部分)推送到“AddTableViewController”或将标签栏控制器连接到插座然后选择包含“AddTableViewController”的标签。无需再次实例化您的主故事板(当您的应用程序启动时,它已经加载到内存中)。