我在我的应用中使用了UIWebView
,我正在覆盖shouldStartLoadWithRequest
消息,以检测点击了哪种链接。如果它是一个“特殊”链接,我将UIViewController
推入堆栈并从此方法返回NO。这大部分时间都是花花公子。
但是,有时我会点击一个链接,我的shouldStartLoadWithRequest
永远不会被调用。现在奇怪的是,容纳UIWebView
的UIViewController位于UITabBarController
中,当我点击另一个选项卡时,UIWebView最终得到它的shouldStartLoadWithRequest
。在我点击其他标签之前,我没有接到shouldStartLoadWithRequest
的电话。另一个有趣的是,第一次点击链接时,故障情况永远不会发生;它总是在随后的时间。
有没有人见过这个?对我而言,这听起来像UIWebView
,有时候,没有得到touchEnded事件,并且通过切换标签,底层框架强制触发一个touchEnded事件,这反过来导致我的shouldStartLoadWithRequest
被调用。
答案 0 :(得分:0)
您是否正在实施
– webView:didFailLoadWithError:
来自UIWebViewDelegate的方法?也许你在请求上遇到错误然后你从未见过它?当你遇到诸如超时和其他事情之类的问题时,该代表应该被抛出。