Question How do I deny a storyboard segue from taking place?
Context: I have a static grouped table view of options on the first view controller that is visible (the main menu if you will).
I purposely show the UI early to give the user a chance to interact and perceive a fast load response. Other operations that might be importing data for example, happen on a background operation queue. Most of my UI functions are in fact, ready to go as soon as you see them.
One menu item (table row) in particular though, isn't ready until some data is imported (I send a notification when all is ready).
While I could remove the storyboard segue for this action, it got me thinking on how I might inhibit a segue from firing because a certain condition wasn't met.
I'll likely allow the segue in practice, and have the destination view controller limit initialization until it receives the notification it is waiting for.
But can one intercept a segue and stop it, programmatically?