У меня есть приложение на основе UINavigation, которое собирает информацию на различных экранах и в конечном итоге делает запрос веб-службы, используя все собранные параметры.
Итак, у меня есть контроллеры просмотра A, B, C, D. A получает имя и номер, затем выводит B на экран с некоторой базовой информацией ETC ETC, пока не дойдет до D, где я фактически отключу веб-сервис.
Плохой метод, который я использовал, состоит в том, чтобы дублировать поля класса, начиная с А. Это означает, что если я собираю имя и число, то я делаю эти поля B, которые затем добавляют несколько полей, а затем C имеет поля класса A и B, что кажется плохой практикой программирования.
Что я могу сделать, чтобы получить доступ к полям класса A в классе D? Я получил определенные идеи, но не уверен, насколько они верны.
1). Использовать NSNotification (это перебор?) Если да, то как мне пройти поля?
2). Я просто сохраняю все 5 контроллеров представления и просто получаю информацию в конце? (кажется очень неэффективным)
3). Должен ли я просто создать экземпляр класса NSObject с именем Payload и просто устанавливать его поля каждый раз, когда я отскакиваю от одного контроллера представления к другому? (Если это так, я создаю его в классе A? Что если пользователь перейдет обратно в класс A, получит ли он сброс ETC ETC)
Как вы можете сказать, я пытался найти решение, и я довольно новичок в этом. Некоторые подробные предложения будут высоко оценены.