【问题标题】:Loading local image in webview在 webview 中加载本地图像
【发布时间】:2014-01-22 11:23:01
【问题描述】:

所以基本上我将 HTML 代码创建为我的 webview 的字符串。然后在创建代码时我调用

[webView loadHTMLString:formattedString baseURL:nil];

webview 用 css 和图像很好地显示了网页。图像编码如下

background-image: url('http://URL TO IMAGE');

但是当我先下载图像并将其保存到我的根文件夹时

- (NSString *)absolutePathToCacheDirectory {
NSString *path = [cacheDirectory stringByExpandingTildeInPath];
if ([path characterAtIndex:0] != '/') {
    path = [[NSString stringWithFormat:@"~/Documents/%@", path] stringByExpandingTildeInPath];
}
return path;
}

然后尝试像这样设置背景图像:

background-image: url('/Users/USERNAME/Library/Application Support/iPhone Simulator/7.0.3/Applications/D2E85045-EB9E-4481-9219-231886DCB822/Documents/cache/IMAGENAME');

它不显示图像。我试过带和不带引号。甚至用 FileManager 检查文件是否存在 @path 并且它确实存在。

有人知道为什么当我尝试在本地加载我的图片时,它没有显示在 webview 中吗?

【问题讨论】:

  • 如何在本地保存图片?
  • [fm createFileAtPath:fileName contents:data attributes:nil];当我在 Finder 中查找文件时,它就在那里并给出了预览。但我只是注意到它的类型是文档。
  • 它缺少扩展名。尝试修复该问题,然后使用正确的扩展名重试
  • 好吧,我添加了一个扩展名,所有图像都是 jpg。但是仍然没有出现在我的网络视图中。我尝试了 Imagename.jpg 并且没有 .jpg 但它没有显示(FileManager 说它存在 btw 并且我在 Finder 中看到了图像)。 HTML 字符串类似于: background-image: url('/Users/USERNAME/Library/Application Support/iPhone Simulator/7.0.3/Applications/4FED6D3D-F24A-49E8-802A-61DC91D73193/Documents/cache/imagename.jpg') ;

标签: html css objective-c uiwebview


【解决方案1】:

好的,我发现了我的问题。只是忘记在加载 html 时设置 baseURL。它现在指向存储我的图像的文件夹。

【讨论】:

    猜你喜欢
    • 2017-07-05
    • 1970-01-01
    • 2017-04-09
    • 2011-07-23
    • 2014-12-14
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多