4

具体的には、次のようなフォルダ構造になっています。

  • について(メインフォルダ)
    • 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はロードしません。

どんな助けでもいただければ幸いです!ありがとうございました!

4

2 に答える 2

8

おっと、私は実際にここで答えを見つけました: uiwebviewのローカルhtmlを使用して相対パスからリソースをロードします

次のコードを使用して、実際のフォルダー構造をそのまま使用することができました。

NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"index" ofType:@"html" inDirectory:@"/about/page"]];
[webView loadRequest:[NSURLRequest requestWithURL:url]];
于 2012-07-10T12:41:21.383 に答える
0

images/css/js使用する代わりにsample.js

于 2012-07-10T12:36:28.540 に答える