Too many views in storyboard - Xcode running Slow
I faced the same issue when I was working on an Enterprise App. In the Project I had only one
storyboard and all views in a single storyboard. Opening the storyboard caused Xcode to get very slow.
So I divided the storyboard into multiple storyboards as module-wise and load a separate storyboard per module like in the code below:
If I want to push a view controller:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"storyboardName" bundle:nil];UIViewController *viewController = [storyboard instantiateViewControllerWithIdentifier:@"Members_ViewController"];[self.navigationController pushViewController:viewController animated:YES];
We're having the same issue, and commonly recommended performance tweaks didn't help. On a MacBook Pro with SSD I see CPU utilization go to 80-90% when in storyboard view and navigation lag is incredibly frustrating. Simulator can take up to a minute to display, and Xcode often won't close, requiring a force quit.
These symptoms all disappear if not viewing the storyboard, or if storyboard is open as source code.
UPDATE: We split our project up into multiple storyboards, and life is good again - CPU utilization is back to single digits and performance is on par with Xcode 4.6.3. There is definitely an issue with larger storyboards; the only change made to our code in the process was updating references to the main storyboard to a storyboardWithName call instead.
One of the view controllers in our project has a container view, and it appeared that the utilization issue stopped when that controller and its container view were moved to a separate storyboard. It may have been a coincidence, and we broke up the rest of the storyboard for consistency, but if I were dealing with this issue again, I'd first move any view controllers with container views to a separate storyboard.