Несколько ViewController - лучший подход - PullRequest
1 голос
/ 30 июня 2011

У меня есть очень большая форма для создания приложения ipad, и я точно знаю, какой подход (между созданием нескольких представлений или нескольких контроллеров представлений) следовать.Ну, я решил разделить разделение на логические разделы, поэтому я хочу использовать splitviewcontroller с корнем (tableviewcontroller с разделами) и множественные контроллеры для каждого раздела.Когда пользователь выберет строку в табличном представлении, я покажу соответствующий viewcontroller.Я сохраняю ссылку для каждого viewcontroller в моем app_delegate, и app_delegate также отвечает за изменение viewcontrollers.Это лучший подход?Есть другой подход, которому нужно следовать?Что касается множественного представления, я думал поместить несколько представлений в один и тот же файл xib, а затем выбрать на основе тега в качестве использования коснитесь строки в представлении таблицы rootviewcontroller.И извините за мой плохой английский .. Учусь!

Ответы [ 2 ]

1 голос
/ 30 июня 2011

Я скажу это по теме: в настоящее время наличие нескольких контроллеров представления на экране одновременно может быть проблематичным, если вы не используете один из существующих классов Apple, например UISplitViewController.

Основная проблема заключается в том, что важные события, на которые ваши контроллеры представления захотят отвечать (события поворота и т. Д.), Не будут переданы им. Это не огромная боль, это просто что-то, что нужно учитывать - вы обычно создаете свой собственный родительский контроллер представления, который может передавать эти события его дочерним элементам.

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

Если вы ориентируетесь только на iOS 5, есть некоторые изменения, которые имеют отношение к нескольким контроллерам на экране одновременно, но я не могу обсуждать их здесь из-за NDA. Чтобы узнать больше, посетите форумы разработчиков Apple (devforums.apple.com).

0 голосов
/ 22 июля 2011

Звучит так, будто я пытаюсь сделать то же самое, что и вы (большие страховые формы здесь, как насчет вашего проекта?) К сожалению, я не могу помочь, потому что вы немного впереди меня.Мне удалось переключаться между 8 подробными видами, нажимая на 8 строк в моем UITableViewController, не сохраняя ссылки ни на текущий, ни на предыдущий.Данные, которые я ввожу в различные TextFields, остаются там, где и должны.

В настоящее время у меня есть xxxViewController.h / .m и соответствующий файл .xib для каждого подробного представления.Это ужасно много кода, но я не мог найти другого способа сделать это.Теперь у меня проблема с получением обработчиками нажатой кнопки.Кроме того, я все еще должен поместить базу данных за этими экранами.

Удалось ли вам преодолеть проблему?

Спасибо,

Джефф в Алабаме

...