На iPhone Plus версия UISplitViewController вылетает при вращении - PullRequest
0 голосов
/ 10 апреля 2019

У меня такая ситуация:

  • UISplitViewController как основная навигация приложения
  • master - детальный дизайн, т.е. VC iPad master соседствует с VC подробно на iPhone Master с меню представлены с использованием showDetailViewController() подробных контроллеров представления.

на всех iPhone и iPad все работает отлично, но на iPhone Plus происходит сбой, когда у меня на экране Detail VC и я пытаюсь повернуть его из портретной в альбомную. Поскольку я бегу прямо из меню к деталям, VC уже в ландшафте, чем у меня есть контроллеры бок о бок.

Код настолько прост и прост, что я не могу найти никаких ошибок. Выдает только ошибку, подобную этой:

EXC_BAD_ACCESS on @UIApplicationMain AppDelegate

  0x112a82804 <+115>: callq  0x112a82869               ; _UIApplicationMainPreparations
    0x112a82809 <+120>: movq   0xceb190(%rip), %rdi      ; UIApp
    0x112a82810 <+127>: movq   0xc5f841(%rip), %rsi      ; "_run"
    0x112a82817 <+134>: callq  *0x892c93(%rip)           ; (void *)0x000000010906fd80: objc_msgSend
->  0x112a8281d <+140>: movq   0x892c94(%rip), %rbx      ; (void *)0x000000010906d010: objc_release

ОБНОВЛЕНИЕ:

Я сделал простой стартовый проект с упрощенной навигацией. Один единственный вызов showDetailViewController от главного виртуального канала к подробному виртуальному каналу. И даже в этом случае происходит сбой, поэтому он не работает на телефонах iPhone Plus. Похоже, ошибка UISplitViewController. Я думаю, что некоторым решением будет установить на устройствах iPhone Plus принудительное свертывание (не бок о бок) в ландшафтном режиме. Я думаю, что есть возможность установить размер классов (переопределить один по умолчанию) для ландшафта для UISplitView через делегирование. Кто-нибудь знает, как этого добиться?

enter image description here

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