2013-04-18 4 views
1

Я пишу приложение, которое имеет две секции, как это:IOS - UIViewControllers разделяющего экрана

enter image description here

Идея в том, что на верхней часть я создаю запрос, и на день Я показываю результаты. Поскольку мой подкласс UIViewController растет и растет, я подумал, что неплохо было бы разбить его на два UIViewController. (Так что я пытаюсь сделать что-то вроде UISplitViewController).

Хотя я знаю, что это возможно программно, я хотел бы поставить оба изображения на экране из интерфейса Builder, чтобы я мог управлять автоспусками и проектировать там. Перетаскивание не работает.

Возможно ли это? И что более важно - это хороший дизайн или я должен придерживаться правила «Один контроллер вида для одного экрана»?

+0

Какую версию iOS вы настраиваете? – jrturton

+0

iOS 6 только. Спасибо, что спросили - это важно – Gricha

ответ

2

Вы можете использовать пользовательский контроллер контейнера для достижения того, чего хотите. См:

Короче говоря, с iOS 5 вам больше не нужно иметь один контроллер вида. Просто убедитесь, что вы вызываете необходимые вызовы, связанные с защитой. И iOS 6 упрощает проектирование раскадровки для пользовательских контейнеров с объектом «контейнерный вид».

1

Apple заявила (WWDC 2012, Evolution of View Controllers, я думаю), что «экранный» больше не подходит. Контроллер представления должен управлять автономной функциональностью.

Начиная с iOS5 вы можете составить интерфейс нескольких контроллеров просмотра, используя защиту контроллера вида (addChildViewController: и т. Д.). Начиная с iOS6 вы можете сделать это в построителе интерфейса, используя контейнеры и сдерживающие сегменты.

Вам понадобится контроллер вида для хранения ваших двух контроллеров детского вида - это будет содержать экранный контент и обычно выполняет любую координацию между двумя детьми.

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