Загрузка содержимого UIWebView перед его отображением - PullRequest
6 голосов
/ 04 июня 2010

В моем приложении установлено количество ViewControllers. Они распределяются и инициализируются при запуске приложения и освобождаются при выходе. Они используются NavigationController для нажатия / выталкивания. В этих ViewControllers есть WebViews (на самом деле больше ничего нет).

Моя проблема: Когда я хочу изменить содержимое (URL) WebView, которого нет в текущем TopViewController, содержимое не загружается до тех пор, пока я не нажму / выдвину связанный ViewController.

И переход нам "некрасивый". Выдвинутый / выдвинутый Viewcontroller показывает старое содержимое в худшем случае или пустую страницу в лучшем случае до того, как ViewController будет в полном представлении, ТОГДА отображается новое содержимое.

Я много чего перепробовал (даже помещая "loadRequest" в другой поток с глупыми взглядами).

Знаете ли вы, как можно все сделать гладко?

1 Ответ

0 голосов
/ 04 июня 2010

Как правило, вы должны планировать свой пользовательский интерфейс для медленных загрузок UIWebView, потому что вы не можете планировать заранее, чтобы знать, сколько времени это займет. То, что я часто делаю, это UIView, который имеет спиннер и сообщение, такое как «Загрузка ...», которое находится поверх UIWebView. Вот как я это использую:

В viewWillAppear: я показываю загрузочный вид и запускаю прядильщик.

В webViewDidFinishLoad я скрываю загрузочный вид.

Если вызывается webViewDidFail, то при загрузке страницы вы не показываете промежуточный или недействительный контент. В этом случае вы можете представить UIAlertView.

Если вам интересно, вы можете увидеть это на странице рекордов моей игры (Lexitect, бесплатно)

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