Вызов NSXMLParser на основе направления навигации
У меня есть приложение на основе навигации с тремя контроллерами представления. У первого есть категории информации, у второго - список элементов из этой категории, а у третьего - детали по конкретному предмету.
Я заполняю контроллеры представления 1 и 2, используя NSXMLParser, который вызывается в viewWillAppear. В прямом направлении (от VC1 до VC2 до VC3) все в порядке, вызывается анализатор и заполняются представления.
К сожалению, когда пользователь выбирает кнопку "Назад" на навигационной панели, тот же процесс происходит в обратном порядке (с VC3 по VC2 по VC1), когда снова вызывается viewWillAppear, и поэтому вызывается также анализатор, даже если он просто выбирает те же данные.
Я хочу убедиться, что парсер вызывается только в прямом направлении. Любые идеи, как я мог бы структурировать это?
Спасибо фил
1 ответ
Не могли бы вы сделать что-то столь же простое, как наличие BOOL-ивара с именем goingwardward на VC2, для которого VC1 устанавливается в значение YES до -pushViewController:animated: call, а VC3 устанавливается в значение NO до -popViewControllerAnimated: ..., а затем проверяется идти в Forward в VC2 -viewWillAppear?
Я уверен, что есть более элегантные способы сделать это (и с нетерпением жду, чтобы прочитать о них) - но это должно работать, не так ли?