【问题标题】:ios 5 loading cached images in a uiwebviewios 5 在 uiwebview 中加载缓存的图像
【发布时间】:2012-01-05 23:31:59
【问题描述】:

我有一个带有UIWebView 的应用程序,我在其中显示一些html 内容。

内容首先从网上下载,然后保存到 /library/cache 中的缓存中以供重复使用。

图像也会保存到缓存中。

保存到缓存中的 html 代码已更改,以便图像的“src”代码指向确切的文件夹 - 图像已保存在缓存中的位置。

当我从缓存加载页面时,iOS 5 不显示图像。我什至没有“?”丢失文件的图标。没有错误。除了实际的 iOS 5 之外,它在所有其他 iOS 上都能完美运行。

有人有想法或遇到同样的问题吗?


是的,我正在使用loadHTMLString 方法

我在文档和其他主题中找到了这个:

问题:UIWebView 无法在针对 3.0 构建的应用中加载本地资源。 使用[UIWebView loadHTMLString:baseURL:] 时,HTML 字符串不应使用 file:// 方案引用本地资源。相反,为 baseURL: 传递 NULL 或 file:// URL,或使用 <style><script> 标记直接在 HTML 中包含资源。

我使用[UIWebView loadHTMLString:baseURL:] 从缓存中加载 html,我的应用是针对 3.0 构建的 我的baseURL 被固定到我的服务器的 url。如果现在我在baseURL 中输入“NULL”,则图像将在 iOS 5 中正确显示。

我只是不明白为什么如果我为baseURL 设置一个 URL 并因此只在 iOS 5 上显示图像,而在其他 iOS 上显示图像。

几个月前,该项目已使用 XCode 4.2 构建和部署 - 我不知道这是否有用。它曾经奏效过!但是loadHTMLString 的问题让我觉得它不应该与其他 iOS 一起使用?!?

【问题讨论】:

    标签: iphone ios


    【解决方案1】:

    您是否使用 loadHTMLString 方法在 WebView 中加载数据?

    如果是,那么你应该传入他的baseUrl NSCachesDirectory

    【讨论】:

    • 是的,我正在使用 loadHTMLString 方法。
    • 是的,它甚至通过为 baseURL 传递 NULL 来工作。我只是不明白为什么它不适用于 iOS 5,而它适用于其他 iOS。
    猜你喜欢
    • 2012-08-19
    • 2013-04-19
    • 1970-01-01
    • 2011-07-01
    • 2012-02-21
    • 1970-01-01
    • 2015-11-08
    • 2015-12-07
    • 2012-06-13
    相关资源
    最近更新 更多