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 の代わりに「Blah!」connection:didFailWithError を呼び出すように取得するだけです。
では、どうすればいいですか?