Стратегия для реализации нескольких контроллеров представления - PullRequest
0 голосов
/ 26 сентября 2011

Мое приложение для изучения. Он будет иметь три экрана: один для изучения (чтения), один для рецензирования, а второй - в качестве главного меню (для управления документами и выбора исследования или рецензии). Главное меню будет первым экраном при загрузке приложения.

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

Подход A: (4 x View Controllers - рут, меню, изучение, обзор)

У этого подхода есть контроллер корневого представления без экранных элементов управления. Он всегда будет содержать один из других контроллеров представления как подпредставление. По какой-то причине меня привлекает такой подход, но я не видел других примеров этого, так что, возможно, я глупый. Мне интересно, есть ли причина, почему это по своей сути неправильно.

Подход B: (3 х View контроллеров - root (меню), изучение, обзор)

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

Буду признателен за любые мысли о том, какой подход лучше. Я новичок в разработке программного обеспечения. Я проработал несколько книг по разработке программного обеспечения для iOS и немного повозился, и сейчас я запускаю свое первое приложение для iPad.

1 Ответ

1 голос
/ 26 сентября 2011

Всякий раз, когда вы определяете, как расположить свои представления и контроллеры, они очень часто основаны на потоке приложений (с точки зрения конечного пользователя). Таким образом, исходя из вашего исходного вопроса, я не уверен, что точно понимаю последовательность действий: вынужден ли пользователь начинать с главного меню, а затем оттуда переключаться между двумя взаимоисключающими представлениями (изучение и обзор)? В этом случае я бы порекомендовал использовать контроллер панели вкладок для представлений «Изучение» и «Обзор», поскольку он позволяет сохранять состояния представлений и переключаться между ними без необходимости выполнять дополнительную работу (из обоих подходы, которые вы описали, звучит так, как будто вы в значительной степени воссоздаете это поведение самостоятельно). Затем, для главного меню (которое, как я предполагаю, отображается при первом запуске приложения?), Вы можете просто открыть его модально (обратите внимание, что вам не нужно анимировать открытие, чтобы оно могло мгновенно появиться вместо того, чтобы скользить снизу вверх, и пользователь никогда не станет мудрее). Как только пользователь выберет то, что ему нужно, в главном меню, отклоните модальное представление, и вы будете готовы к работе с вашим 2-вкладочным контроллером.

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