UIWebView的shouldStartLoadWithRequest有时不会调用

时间:2011-12-15 21:23:53

标签: iphone ios uiwebview uiwebviewdelegate

我在我的应用中使用了UIWebView,我正在覆盖shouldStartLoadWithRequest消息,以检测点击了哪种链接。如果它是一个“特殊”链接,我将UIViewController推入堆栈并从此方法返回NO。这大部分时间都是花花公子。

但是,有时我会点击一个链接,我的shouldStartLoadWithRequest永远不会被调用。现在奇怪的是,容纳UIWebView的UIViewController位于UITabBarController中,当我点击另一个选项卡时,UIWebView最终得到它的shouldStartLoadWithRequest。在我点击其他标签之前,我没有接到shouldStartLoadWithRequest的电话。另一个有趣的是,第一次点击链接时,故障情况永远不会发生;它总是在随后的时间。

有没有人见过这个?对我而言,这听起来像UIWebView,有时候,没有得到touchEnded事件,并且通过切换标签,底层框架强制触发一个touchEnded事件,这反过来导致我的shouldStartLoadWithRequest被调用。

1 个答案:

答案 0 :(得分:0)

您是否正在实施

– webView:didFailLoadWithError:
来自UIWebViewDelegate的

方法?也许你在请求上遇到错误然后你从未见过它?当你遇到诸如超时和其他事情之类的问题时,该代表应该被抛出。