2010-09-14 3 views
0

Сценарий выглядит следующим образом:вызова viewDidLoad после некоторой задержки

Мое приложение имеет tabBarController на коснувшись вкладки происходит некоторое парсинг XML с сервера, который принимает некоторые данные полиэтничного оправился от разборе собирается быть там представление выбранного обработчика viewController (т. е. данные используются в методе viewDidLoad). Теперь как я могу гарантировать, что метод viewDidLoad вызывается только тогда, когда синтаксический анализ завершен. Разбор выполняется в некоторых методах делегатов класса NSURLConnection, который вызывается через некоторое время после установления соединения. Тем временем вызывается метод viewDidLoad.

+1

Чтобы дать вашему пользователю оперативную обратную связь, что они действительно выбрали вкладку (например, они не пропустили или приложение не кажется сломанным), вы можете разделить свой viewDidLoad с данными в пустой viewDidLoad (возможно, с поворотом индикатора активности) и viewLoadAndDisplayData, который может быть вызван вашей загрузкой URL-адреса и разборкой разбора. – hotpaw2

ответ

3

Почему вы не перемещаете свой код из viewDidLoad в пользовательскую функцию, а затем вызываете , что, когда ваш XML был разобран?

, например, у меня есть несколько приложений, в которых каналы блога/RSS/XML загружаются в UITableViewController и connectionDidFinish: я просто называю [tableView reloadData];, а не пытаться бежать viewDidLoad снова.

+0

Или используйте NSNotificationCenter – willcodejavaforfood

+0

Спасибо Томас, который работал для меня – bhatti

+0

Как я могу использовать NSNotificationCenter для задержки viewDidLoad ??? – bhatti

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