0

我正在从 SBJson 解析器解析 json。我正在使用 SDWebIamge 进行图像缓存。我的 JSON 数据有一个标签,即“内容”,它在文本之间有文本 + 图像链接。例如像这样的东西

<p>This is sample text.<\/p>\n<p><a href=\"http:\/\/xyz.com\/08\/15.jpg\"><img class=\"aligncenter size-full wp-image-1273\" title=\"15\" src=\"http:\/\/xyz.com\/08\/15.jpg\" alt=\"\" width=\"422\" height=\"720\" \/><\/a><\/p>\n<p><a href=\"http:\/\/xyz.com\/08\/16.jpg\"><img class=\"aligncenter size-full wp-image-1274\" title=\"16\" src=\"http:\/\/xyz.com\/08\/16.jpg\" alt=\"\" width=\"680\" height=\"1024\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n

我解析并存储在我的 NSString 变量中。然后我有一个 webview,我从这个 NSString 加载

 NSString *htmlString = [[NSString alloc] initWithString:myObj.Content];

默认情况下,它会加载文本并获取链接图像,正如我们都知道的 Web 视图一样。我正在将此 JSON 数据保存到文件中以供离线查看,这要归功于 SDWebimage。但我的问题是当我将保存内容加载到webview它只显示文本没有图像,因为这些在我加载的NSString链接中没有图像兑现。那么我如何在我的webview中缓存图像,以便下次我从字符串加载我的webview时,它将显示来自链接中的图像我的 NSString 数据。

谢谢

4

1 回答 1

0

您可以使用现有的实现来执行此操作 - ASIWebPageRequestProxyingUIWebView之类的东西应该可以解决问题。

或者,您可以尝试自己实现这一点。一种选择类似于以下内容:

  1. 解析 HTML 字符串并检测任何img标签及其src属性
  2. 下载并存储检测到的任何图像
  3. img通过修改HTML 字符串中标签中图像的路径,显示存储的(下载的图像)代替在线原件。

请注意,这远非最佳解决方案,并且只是一种可能实现的示例。

于 2012-08-13T11:23:24.610 回答