2012-01-30 2 views
0

У меня есть контроллер представления, который содержит представление таблицы, и которая обернута в навигационном контроллере, то есть в приложение делегата эти два созданы и установлены как:Как диспетчер просмотра может прекратить загрузку/увольнение?

UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:self.myViewController]; 
self.window.rootViewController = navController; 

Если пользователь нажимает на строку в пределах таблица, то другой вид контроллера создается и толкнул стек навигационный контроллер в:

[self.navigationController pushViewController:webPageController animated:YES]; 

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

Если webPageController обнаруживает проблему я пытался экспериментировать с этим вызовом различные вещи, такие как:

[self.navigationController popViewControllerAnimated:YES]; 

или

[self.navigationController.navigationBar popNavigationItemAnimated:YES]; 

Чтобы выскочить отгородиться навигации стека, однако эти Арен» t работает, неправильно ли для контроллера навигации пытаться всплывать так вот так? Каков канонический способ реализации этого?

Thanks

ответ

2

Все должно быть хорошо. Где вы вызываете popViewControllerAnimated :? Если вы вызываете перед viewDidAppear, вы, вероятно, столкнетесь с проблемами. ViewControllers должны закончить появление и исчезновение, прежде чем они смогут сделать какой-либо поп или нажать на их стек. Если вы делаете это раньше, вы получите очень странные результаты. Самый распространенный симптом этого - это не работает. Часто кнопки внутри него тоже будут запутаны.

+0

Спасибо. Его вызывается в конце loadView, но перед viewDidAppear. Я переделаю вещи и попробую. Однако, если он всплывает после viewDidAppear, пользователь заметит, что представление появляется или исчезает очень быстро? Если viewDidAppear означает, что представление буквально появилось, будет ли оно на мгновение видимым? – Gruntcakes

+0

Теперь это работает - однако представление таблицы скользит на полпути с экрана, а затем обратно, я должен посмотреть, могу ли я заставить контроллер табличного представления определить заранее, если нажатие его контроллера детали будет успешным или неудачным, хотя это может нарушить мою инкапсуляцию. – Gruntcakes

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