2011-12-15 4 views
1

В моем приложении используется UIWebView, и я переопределяю сообщение shouldStartLoadWithRequest, чтобы определить, на какую ссылку нажимаем. Если это «специальная» ссылка, я нажимаю UIViewController на стек и возвращаю NO из этого метода. Это работает просто денди большую часть времени.UIWebView's shouldStartLoadWithRequest иногда не вызывается

Иногда, однако, я нажимаю на ссылку, и мой shouldStartLoadWithRequest никогда не вызывается. Теперь странно, что UIViewController, в котором находится UIWebView, находится в UITabBarController, и когда я нажимаю на другую вкладку, UIWebView наконец получает свою вызванную shouldStartLoadWithRequest. Пока я не нажму на эту другую вкладку, я НЕ звоню в shouldStartLoadWithRequest. Другой интересный бит заключается в том, что случай сбоя никогда не случается при первом щелчке по ссылке; это всегда в последующий момент.

Кто-нибудь видел это? Для меня это звучит так: UIWebView, иногда, не получает событие touchEnded и, переключая вкладки, базовая инфраструктура вынуждает событие touchEnded, которое, в свою очередь, вызывает вызов shouldStartLoadWithRequest.

ответ

0

Вы реализации метода

– webView:didFailLoadWithError: 

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

+0

Я был. Я закончил переработку этого кода, чтобы использовать родные UITableViews, поэтому вопрос сейчас бессмысленен :) Спасибо за помощь. – salil

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