Sorry it's late, but I just ran into this problem. This is one of those obscure issues with InterfaceBuilder, where sometimes it does not create complete information for custom classes, so segue does not find the controller class.
In my case, I had two identical views with built-in TableViewControllers. The first worked, the second - no. When studying the storyboard as source code, I saw that in the second there was no additional information, when I added it, viewDidLoad is called. To fix this
1) Open the storyboard as source code.
2) Search to find customClass for the built-in view controller
customClass="MyEmbeddedViewController"
2) Add the following values ββafter it (MyAppProject should be the name of your project, the goal is only the goal).
customModule="MyAppProject" customModuleProvider="target"
Your embedded controller should now start viewDidLoad and work fine.
source share