iPhone UIWebview - 保存已下载的图像

时间:2009-02-09 22:07:54

标签: iphone uiwebview

我有一个带有嵌入式UIWebview(Safari)控件的iPhone应用程序。我希望能够在本地存储来自某些网页的图像。

我可以通过编程方式访问UIWebview下载图像的路径吗?或者我是否需要解析HTML,然后在网上找到图像资源并再次下载?

3 个答案:

答案 0 :(得分:5)

我不知道你是否可以从Safari的缓存中访问预装的图像......

但是,您可以通过运行一些javascript来轻松找到图像URL而无需解析HTML:

NSString *script = @"var n = document.images.length; var names = [];"
                    "for (var i = 0; i < n; i++) {"
                    "     names.push(document.images[i].src);"
                    "} String(names);";
NSString *urls = [webView stringByEvaluatingJavaScriptFromString:script];
// urls contains a comma-separated list of the image URLs.

答案 1 :(得分:0)

我认为您不能直接使用UIWebview保存图像,您将不得不手动获取图像...

答案 2 :(得分:0)

免责声明:我没试过。

如果你能找到他们的名字,UIImage会回复+(UIImage *)imageNamed:(NSString *),文档暗示可能会从设备范围的缓存中恢复图像。

我有兴趣了解任何实验的结果。