我需要在导航到另一个屏幕之前下载并缓存整个webPage。对于缓存,我已对子NSURLCache
进行了分类,并通过覆盖cachedResponseForRequest:request
和storeCachedResponse:forRequest:
方法保存响应。当有webView并且我在其中加载请求时,它可以正常工作和缓存没有任何问题。
在我的情况下,我需要在实际显示在webView上之前下载许多webPages。那么如何模拟UIWebView的loadRequest:
而不实际将其作为子视图添加到任何地方呢?或者最好是任何其他方式我可以在不使用UIWebView的情况下加载网页.. ??
这是我发现的:
如果未将UIwebView添加为subView,并且我调用loadRequest:
,则请求不会加载(甚至不会调用委托方法..!)
我尝试过NSURLConnection,
[NSURLConnection sendAsynchronousRequest:urlrequest queue:[NSOperationQueue currentQueue] completionHandler:^(NSURLResponse * response,NSData * data,NSError * error){ }];
还有,
NSURLConnection *theConnection = [[NSURLConnection alloc] initWithRequest:urlrequest delegate:nil];
if (theConnection) {
}
但上述方法的问题在于,它只发送一个请求,我的意思是它不会请求我需要缓存的webPage中的图像,css和js文件。
那么,它是什么方式让它像UIWebView
loadRequest
{{1}}中那样请求所有内容。??