Reputation: 89
I know how to do it with buttons by clicking and dragging, but I have a situation where I need a transition without a button. so what code will allow me to transition from the current UIViewController to a different UIViewController that is already initialized?
Upvotes: 0
Views: 428
Reputation: 24714
When you want to go to next viewController
self.performSegueWithIdentifier("yoursegue", sender: nil)
Upvotes: 1
Reputation: 14845
First, you will need to create the segue in the storyboard and give a proper name to the identifier of this segue. You can do this by clicking on the segue (left panel) and then click on Attributes (right panel).
The same way you can call this segue using buttons or selection of table rows from your storyboard, you can call it from code using performSegueWithIdentifier:sender:
As when using the button and cells on uitableview, your view controller call prepareForSegue:
You override this method in your view if you need to pass any data between controllers:
override func prepareForSegue(segue: UIStoryboardSegue?, sender: AnyObject?) {
if segue!.identifier == "MySegue" {
let viewController:ViewController = segue!.destinationViewController as ViewController
viewController.receiveSomedata = self.sendSomeData
}
}
Upvotes: 1