UIViewController и проблема получения данных со стеком навигации - PullRequest
0 голосов
/ 10 ноября 2011

Я разрабатываю одно навигационное приложение. Все данные, необходимые для каждого экрана, загружаются с веб-сервера. Я начинаю загрузку в методе viewDidLoad. ALI загрузка происходит асинхронно, и соответствующий viewcontroller будет получать данные через шаблон делегата. Теперь мой вопрос в том случае, если новый viewcontroller перемещается в стек навигации или текущий контроллер представления отключается так быстро, прежде чем данные будут получены, как мы справимся с этой ситуацией? Мы не хотим блокировать пользовательский интерфейс, чтобы пользователь мог двигаться вперед или назад. Я использовал механизм уведомлений, чтобы обнаружить, что конкретный контроллер представления (тот, кто получает данные) жив или нет, но, похоже, это не конкретное решение. Поэтому я хочу определить, что получатель подходит для получения загруженных данных, прежде чем я вызову его метод делегата. Любой связанный с ним указатель весьма заметен.

Спасибо! Nilesh

1 Ответ

0 голосов
/ 10 ноября 2011

Я думаю, что шаблон источника данных более уместен.

1) Создайте источник данных (одиночный или прикрепленный к вашему делегату приложения)

2) Реализуйте метод dataWithPredicate: (или просто данные)

3) Уведомлять ваш viewController (с NSNotificationCenter), когда данные обновляются

4) Перезагрузить данные с контроллера (с dataWithPredicate: call)

Другой способ - использовать основные данные для этого. CoreData генерирует все уведомления и выполняет работу за вас.

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