- У меня есть
PortraitViewController
. - Я использую navigationBar контролирует
NavigationController
. У меня есть
shouldAutoRotate
возврат товара Ни один иsupportedInterfaceOrientations
возвращающиеся ПортретNavigationBar изменить размеры изменить направление вращения пустая площадьКогда я поворачиваю на альбомную, я представляю
LandscapeViewController
.
Моя проблема в том, что PortraitView поворачивается, navgationBar автоматически изменяет размер и уменьшает его высоту. Это оставляет пустое пространство ниже navBar.
Есть ли способ предотвратить или отключить это поведение?
Для портретном, я не хочу, чтобы пустое пространство, чтобы появиться, когда вращение происходит
EDIT/UPDATE:
После большого количества Try/ошибок, я был в состоянии держать NavBar фиксированной, где это был в портретном режиме, когда устройство вращается, делая
CGFloat statusBarHeight = Application.statusBarFrame.size.height;
CGFloat navBarHeightInPortrait = navigationBar.frame.size.height;
** Present LandscapeViewController modally via new NavigationController**
navigationBar.frame = CGRectMake(navigationBar.frame.origin.x,
navigationBar.frame.origin.y+statusBarHeight,
navigationBar.frame.size.width,
navBarHeightInPortrait);
Это приемлемый способ сделать то, что мне нужно?