私も同じ問題を抱えていました。他の誰かがそうしている場合は、代わりに error.userInfo 辞書が機能します。
-(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
if (error.domain == NSURLErrorDomain) {
if (error.code == NSURLErrorCancelled) { //ignore this one, interrupted load
return;
}
}
}
//NSString *theURLString = [webView.request.URL absoluteString]; this won't work - it just returns the last successful url
NSString *theURLString = [error.userInfo objectForKey:@"NSErrorFailingURLStringKey"]; //this works
ドコによると、NSErrorFailingURLStringKey は iOS4 では非推奨であり (後方互換性のためにのみ提供されています)、代わりに NSURLErrorFailingURLStringErrorKey を使用する必要があります。
ただし、NSURLErrorFailingURLStringErrorKey は返されません (私のバージョンの UIWebView では返されません)。代わりに、NSErrorFailingURLKey は URL を返す別のキーですが、ドキュメントのどこにも見つかりません。