不使用导航控制器Swift以编程方式更改视图控制器

我想切换到新的视图控制器,当我按下一个button,而不使用导航控制器,我似乎无法做到这一点。 我到处寻找答案,但是我发现的一切都是在Objective-C中,使用导航控制器,或者根本不工作。

func gunsoutButtonPressed(sender:UIButton!) { print("yay\t") //let encounterVC:AnyObject! = self.storyboard?.instantiateViewControllerWithIdentifier("ecounterViewController") //self.showViewController(encounterVC as UIViewController, sender: encounterVC) let encounterViewController = self.storyboard.instantiateViewControllerWithIdentifier("encounterViewController") as encounterViewController self.pushViewController(encounterViewController, animated: true) } 

你必须连接你想使用的两个ViewController。 然后命名segue然而你想要的然后使用下面的代码来触发segue(在一个IBAction或东西)。 这不是完全程序化的,但你可以以编程方式触发它们,这应该是足够的。

 performSegueWithIdentifier("mySegue", sender: nil) 

看看这个video的支持。

希望这可以帮助 :)

没有UINavigationController你不能使用push segue。 你可以用一个模态继续来实现,例如:

 self.presentViewController(encounterViewController, animated: true, completion: nil)