ios swift方法以编程方式在viewcontroller中导航

ios swift方法以编程方式在viewcontroller中导航,swift,uiwindow,Swift,Uiwindow,我想创建我的函数来浏览我的视图 我有一个函数 func ShowView(name:String,caller:AppDelegate){ //story board let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil) let initViewController: UIViewController = storyBoard.instantiat

我想创建我的函数来浏览我的视图

我有一个函数

   func ShowView(name:String,caller:AppDelegate){


        //story board
        let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)

        let initViewController: UIViewController = storyBoard.instantiateViewControllerWithIdentifier(name) as UIViewController

        caller.UIWindow?.rootViewController = initViewController

}
但我需要从AppDelegate和UIViewController调用此函数,如何从UIViewController获取uiwindow,从AppDelegate可以,但我不能保留类似AppDelegate的调用方参数,因为我希望它与UIViewController一起工作。 我真的不知道我的参数必须使用哪一个


非常感谢

如果您正在从主视图移动到详细视图,则无需每次都更换rootView控制器。使用segue将根视图连接到详细信息视图。将标识符设置为在情节提要中分段。在viewController类中覆盖PrepareForegue

}

接受感谢,我的视图中没有按钮或导航栏,无法在我的故事板中设置序列,我希望以编程方式加载新的viewcontroller。也许你知道一种不用添加按钮或导航栏就可以添加segue的方法。最好的重新设置没问题,我已经找到了一种不用按钮就可以添加segue的方法,我在viewcontroller上右键点击后拖动了加号

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {

    if(segue.identifier == "showDetails")
    {
        var viewController=segue.destinationViewController as DetailsView
        //set data            
     }