使用嵌套文件夹结构中的本地HTML文件加载UIWebview

时间:2012-07-10 12:28:02

标签: iphone uiwebview

具体来说,我有一个如下所示的文件夹结构:

  • about(主文件夹)
    • css(此子文件夹包含css文件)
    • img(此子文件夹包含img文件)
    • js(此子文件夹包含js文件)
    • 页面(此子文件夹包含index.html文件)

如果我从普通的计算机浏览器点击index.html文件,一切都按预期工作。

但是,我正在尝试将此index.html加载到UIWebView

到目前为止,我所做的是将“about”文件夹拖到XCode并将其复制到那里,就像我任何其他文件一样。然后我尝试了以下代码:

NSString *htmlFile = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"];
NSData *htmlData = [NSData dataWithContentsOfFile:htmlFile];
NSURL *baseURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] resourcePath]];
[webView loadData:htmlData MIMEType:@"text/html" textEncodingName:@"UTF-8" baseURL:baseURL];

webview加载index.html,但是它没有加载images / css / js,因为我认为它无法在文件夹结构中找到它们。

任何帮助将不胜感激!谢谢!

2 个答案:

答案 0 :(得分:8)

哎呀,我实际上找到了答案:Load resources from relative path using local html in uiwebview

我能够使用实际的文件夹结构,使用以下代码:

NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"index" ofType:@"html" inDirectory:@"/about/page"]];
[webView loadRequest:[NSURLRequest requestWithURL:url]];

答案 1 :(得分:0)

而不是images/css/js仅使用sample.js