ios - Swift: Creating the segue between two controllers does not accept my second view controller -


i trying segue between 2 uiviewcontrollers swift not compile code. here code:

prepareforsegue(segue: uistoryboardsegue(identifier: "containersegue", source: self, destination: eventcolumnviewcontroller.self), sender: nil) 

where eventcolumnviewcontroller custom viewcontroller class, , here error get:

cannot find initializer type 'uistoryboardsegue' accepts argument list of type '(identifier: string, source: viewcontroller, destination: eventcolumnviewcontroller.type)' 

why happening? how can fix this?

here class declaration: class eventcolumnviewcontroller: uiviewcontroller, uiviewcontrollertransitioningdelegate

you don't want specify specific segue in function signature prepareforsegue. instead function receives whichever segue triggered , can perform specific code segue using if blocks.

override func prepareforsegue(segue: uistoryboardsegue!, sender: anyobject!) {     if (segue.identifier == "containersegue") {         // perform specific code here.     } } 

if want perform specific segue named "containersegue" programatically, want use different function:

performseguewithidentifier("containersegue", sender: self) 

notice difference:

  • prepareforsegue used setup (such passing data next controller) after segue has been triggered
  • performseguewithidentifier triggers segue

Comments