4thSpace 4thSpace - 1 month ago 7
Swift Question

How to perform conditional segue

I've created a segue through IB. When buttonA is clicked, a transition to viewB will occur.

In the button click action, I have

performSegue(withIdentifier:sender:)
wrapped in a condition. I want the segue to occur only if the condition is true.

However, once the user clicks the button, the segue happens before the condition is even run. What is the best way to transition programmatically while still using segue identifiers defined in IB?

Answer

You have created segue from the UIButton to a viewController that is the reason segue happens before the execution of condition. Instead of that remove that segue from storyboard and create another from your ViewController to DestinationViewController.

Comments