我用 NSURLRequestReloadIgnoringLocalAndRemoteCacheData 的 cachePolicy 设置了一个 UIWebView,一切都很好:当有连接时,加载了 UIWebView,当没有连接时,调用了 connection:didFailWithError: 并得到了我的 UIAlertView。
但是,当我将 cachePolicy 更改为 NSURLRequestReturnCacheDataElseLoad (这是我真正想要的策略)时,在没有连接的情况下,缓存的页面会加载,然后,当我单击链接时......什么也没有发生。没有连接:didFailWithError:调用。没有 UIAlertView。
我该如何解决?
编辑: 也许我有一个答案的开始......我至少可以使用以下方法确定何时单击 UIWebView 中的链接:
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)req navigationType: (UIWebViewNavigationType)navigationType
{
if (navigationType==UIWebViewNavigationTypeLinkClicked)
{
NSLog(@"Blah!");
}
return YES;
}
现在,而不是 NSLogging “废话!” 我只需要让它调用connection:didFailWithError。
那么我该怎么做呢?