Just a liitle hint to help debugging:
UIViewController's method invoke sequence is as below
- awakeFromNib
- viewDidLoad
- viewWillAppear
- viewWillLayoutSubviews
- viewDidLayoutSubviews
- viewDidAppear
- viewWillLayoutSubviews
- viewDidLayoutSubviews
So, if you have views building by code, make sure that storyboard layout will not break it into mess.