我有一个经常登录服务器并将一批文章下载到iphone的应用程序。文章是html,只使用核心数据存储。 一篇文章在页面上有0-n图像。
在文本太慢的同时下载所有相关图像并占用太多带宽。用户不太可能打开每篇文章。如果他们打开一篇文章很可能会打开几次。
所以我想在需要时在本地下载和存储图像。
这些文章列在UITableView中。点击文章时,弹出一个显示文章的UIWebView。
我有一个功能可以检查我是否已经下载了与该文章相关的图像。如果我有,我只需弹出UIWebView - 一切正常。
如果我没有下载图像,我会下载并下载它们并将它们存储到我的Documents目录中。虽然这个我工作,应用程序挂起图像下载时。不是很整洁。
我希望文章能够快速打开并在文章打开的情况下下载图像。
所以我所做的是检查图像是否已下载,如果不是我继续,只需“触摸”我需要的文件并加载webview。 UIWebView打开,但引用的图像不包含任何数据。然后在后台线程中我下载图像并覆盖“虚拟”图像。
这将保存图像和所有内容,但它不会在我当前的UIWebView中重新加载图像。我必须再次回到文章中再看看图像。
有什么方法可以解决这个问题吗?只在UIWebView中重新加载图像?
答案 0 :(得分:1)
尝试使用javascript重新加载图片。
像这样:
[webView stringByEvaluatingJavaScriptFromString:@"$('img').attr('url','http://123.com/icon.png')"];
答案 1 :(得分:0)
我不知道你是否可以重新加载图像(我猜你不能......但我不确定)
我会尝试使用
重新加载内容[webView reload];