2010-02-02 2 views
1

У меня есть CustomerViewController с табличным представлением клиентов. Нажмите на клиента (didSelectRowAtIndexPath), а OrdersViewController отобразит табличное представление заказов для этого клиента. У меня есть тестовые данные в NSArray для тестирования на данный момент. Однако в какой-то момент мне нужно будет позвонить в веб-службу, чтобы получить данные заказа. В каком контроллере необходимо позвонить в веб-службу? В didSelectRowAtIndexPath из CustomerViewController или viewWillAppear из OrdersViewController? Любые лучшие практики и советы очень ценятся. Благодарю.Какой контроллер для получения данных для UITableViews в приложении IPhone?

ответ

1

Подумайте о существительных, а не о глаголах. Контроллер табличного представления, как вы описываете, отображает список объектов определенного типа. Он должен заботиться больше всего об этом типе. Если вам нужна информация о другом типе объекта, то другой контроллер должен это обработать.

Так OrdersViewController должен обрабатывать выборки заказов

  1. CustomersViewController распаковывает клиенты
  2. CustomersViewController отображает клиентам
  3. пользователь постукивает клиент
  4. OrdersViewController создается с объектом клиента или клиентом идентификатором переданного ему во время инициализация
  5. OrdersViewController запускает запрос и отображает индикатор загрузки
  6. OrdersViewController принимает меры, когда запрос завершен путем перезагрузки таблицы и скрытия указатель нагрузки
+0

спасибо за ясность – 2010-02-19 18:25:02

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