Странное поведение UINavigationController в приложении для iPad - PullRequest
2 голосов
/ 17 декабря 2010

У меня есть приложение с UISplitViewController в качестве корневого контроллера. На главной стороне контроллера находится стандартный UINavigationController с UITableControllers внутри. В деталях просто UIWebView.

Я могу заставить свой UINavigationController начать проявлять какое-то странное поведение после выполнения следующих действий:

  1. Поворот портрета
  2. Вызовите главный вид, нажав мой UIBarButtonItem
  3. Перейдите в главном виде, войдя в дерево навигации и вернувшись назад
  4. Повернуть в ландшафт
  5. Навигация по основному виду, как и раньше

Когда на шаге 5 появляется UINavigationController, все анимации подняты. Весь экран анимируется вертикально вниз вместо обычного анимации UINavigationController. Похоже, это очень связано с UISplitController и вращением.

Кто-нибудь слышал об этой проблеме или знает обходной путь? Я не думаю, что я делаю что-то продвинутое здесь. Если я отключу анимацию UINavigationController, все будет работать как обычно, но я не хочу этого делать, поскольку анимация при правильной работе выглядит довольно гладко.

1 Ответ

3 голосов
/ 18 декабря 2010

Чтобы решить эту проблему, вам необходимо реализовать ShouldAutoRotateToInterfaceOrientation во всех UINavigationControllers.

По какой-то причине это проблема iPad. РЕДАКТИРОВАТЬ: мой случай потерпел неудачу только на iPad, поэтому в других случаях это может быть не так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...