Странное поведение UIWebView - UIWebView отказывается останавливаться - PullRequest
2 голосов
/ 03 сентября 2010

мой UIWebView ведет себя странно.Например, если я перейду с http://google.co.uk на http://ftd.de (новостной сайт), он начнет цикл с ошибками.Не имеет значения, нажимаю я стоп или нет, он просто продолжается.

Журнал выводит следующее и выводит сообщение:приложение.

Что может вызвать что-то вроде этого?Словарь ошибок, как вы видите, не предоставляет никакой информации об ошибке.

Итак, я попытался обойти это:

if ([[error userInfo] objectForKey:@"NSLocalizedDescription"] == nil)   {       NSLog(@"Stop!");        
[browser goBack];       
[browser stopLoading];  
}

Однако это также не останавливает веб-просмотр.:) Я использую iPad SDK.

Ответы [ 3 ]

1 голос
/ 17 сентября 2010

Я не уверен, что понимаю контекст, когда вызывается stopLoading.

Я также не понимаю, почему вы вызываете goBack перед вызовом stopLoading ... это, очевидно, просто контекст, в котором вы пытаетесь работать с ним ... который я бы предположил, что это неправильный контекст или сложный контекст попытаться работать в ....

Итак ... да, в любом случае, попробуйте забыть весь тот контекст, в котором вы пытаетесь работать сейчас, и просто, учитывая поведение, которое вы описываете, попробуйте что-то другое:

Одно предложение : Избавьтесь от своей попытки обхода и попробуйте этот обходной путь вместо этого - Перед загрузкой любого запроса / Перед вызовом loadRequest в любом месте ... Почему бы просто не попробовать вызвать stopLoading? Поэтому, чтобы повторить, просто вызовите stopLoading непосредственно перед тем, как бы вы ни вызывали loadRequest.

Стоит попробовать. Как я уже сказал, я думаю, что ваши вызовы goBack и stopLoading неуместны, и, тем не менее, их контекст не совсем понятен с самого начала ... так что в итоге вы должны попробовать еще несколько способов, потому что мне трудно поможет вам уточнить текущее решение с помощью предоставленной вами информации.

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

0 голосов
/ 17 сентября 2010

Возможно, проблема в том, что вы передавали "http://ftd.de" как строку в веб-просмотр, а не как URL.

Более четко говоря, вы используете что-то вроде:

[webview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://ftd.de"]]]; 

Надеюсь, это решит проблему.

0 голосов
/ 17 сентября 2010

Вы проверили часть, куда вы отправляете команды для загрузки этих сайтов, чтобы увидеть, как часто они вызываются?Возможно, ваш код случайно вызывает их несколько раз.

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