2013-12-22 2 views
2

Я довольно новичок в iOS и Objective-C, но я пытаюсь создать приложение для iPad с вертикальной панелью вкладок с левой стороны, а контроллер с разделенным пространством, занимающий остальную часть экран. Для этого я поставил два вида контейнеров на страницу, а затем встроил контроллер splitview в правый контейнер.iOS7 SplitviewController, встроенный в ContainerView, не вращается

Вот моя история плата:

enter image description here

Это прекрасно работает в альбомной, однако, когда я поворачиваю к портрету контроллер Разделить не вращается в нормальном режиме, и это портит весь макет.

Вот как это выглядит в ландшафте, как и ожидалось: enter image description here

Вот как это выглядит в портретном: enter image description here

Я пробовал различные вещи, как вручную экспедиторская willHideViewController и willShowViewController из контейнер к контроллеру splitview ...

Есть ли что-то, что мне не хватает? Или лучший способ достичь макета, который я бы хотел?

+0

'UISplitViewController' предназначен только для использования в качестве контроллера корневого представления. Возможно, есть способ заставить это работать, но Apple, разумеется, не хочет, чтобы вы использовали 'UISplitViewController' как нечто, отличное от контроллера корневого представления. – nhgrif

+0

Да, я это видел. Наверное, я надеюсь, что есть способ заставить его работать? – JimmyP

+0

Как вы показывали WHOLE SPLIT VIEW-CONTROLLER в ПРАВИЛЬНОМ контейнере? Пожалуйста, поделитесь шагами @JimmyP – djay

ответ

0

Что происходит, в портретном режиме контроллер главного представления переносится в popover, который обычно помещается за пределы экрана слева от контроллера подробного представления. В вашем случае вы можете видеть, что он также находится слева, но это неправильное поведение для вашего дела.

Реализовать протокол делегатов контроллера разделенного представления, в частности splitViewController:shouldHideViewController:inOrientation: и вернуть NO для любой ориентации.

+0

Извините мое невежество, но какой класс должен реализовать протокол? ContainerViewController? – JimmyP

+0

@JimmyP Зависит от того, как вы настроили свою логику. Это может быть контейнер, это может быть мастер, это может быть деталь. Я видел все конфигурации, и они действительны. Поскольку ваша конфигурация с разделенным видом кажется статической, контейнер может быть хорошим местом. –

Смежные вопросы