Это неправильно использовать
viewController.view = newView;
вместо
[viewController.view addSubView: newView];
Первый удаляет дополнительный уровень viewControllers автоматически созданного представления, и если я создаю newView, как это
UIView * newView = [[UIView alloc] initWithFrame: [[UIScreen mainScreen] applicationFrame]];
или как это
UIView * newView = [[UIView alloc] initWithFrame: self.view.frame];
addSubview смещает frame.origin.y на высоту строки состояния.
Кто-нибудь знает причину использования или неиспользования того или иного метода?