Summery
- У меня есть пользовательский UITabBarAutoRotateController, который возвращает YES из shouldAutorotateToInterfaceOrientation. Это не имеет никакого эффекта.
- Если я сверну и покажу приложение снова, проблема поворота исчезнет.
- Как обновить экран, чтобы пользователю не приходилось это делать (вращение снова работает)?
Подробности (настройка графически, без кода):
У меня есть два UITabBarController в MainWindow.xib. Я хочу только один, чтобы показать одновременно. Поэтому я графически связываю rootViewController = tabBarController_name1. Также есть вкладка BarController_name2.
У меня также будет предупреждение MessageBox для пользователя, чтобы выбрать, какой тип приложения ему нужен, и он будет выбирать контроллер панели вкладок на основе их запроса (в соответствии с определением клиента). Это пока закомментировано.
В Rotation есть ошибка, когда два контроллера UITabBarController существуют в одной и той же XIB. Когда я пытаюсь повернуть экран, он остается вверх, где бы ни находилась кнопка основного экрана (кнопка включения кнопки питания). HandleOrientationChange не вызывается при отображении активного пользовательского ViewController.
Причина, по которой я считаю, что это ошибка, заключается в том, что если я нажму кнопку основного экрана (сворачиваем приложение) и нажму на приложение (верну его на передний план), вращение будет работать отлично!
Извините за то, что заставил вас прочитать все это бред :). Мой истинный вопрос: «Могу ли я в любом случае обновить главное окно или аналогично UITabBarController, чтобы заставить ротацию работать (не требуя, чтобы программа была свернута и показана)»? Обходной путь, если хотите?
p.s. Я не могу использовать раскадровку по причинам обратной совместимости. Заказчик получит этот код / проект. Поэтому я хотел бы сохранить это на одной графической странице, а не скрывать / показывать UITabBarItem's.
РЕДАКТИРОВАТЬ: два-uitabbarcontrollers-and-autorotation и uitabbarcontrollers-and-uinavigationcontrollers оба были полезными, но не обращались к «почему», эта проблема возникает. "noob" здесь, когда дело доходит до xcode:)