3

具体的には、元のHTMLのコンテンツを変更せずに(ディレクトリを削除して)、すべてのアセットをそれぞれのディレクトリ(images /、css /、js /)からロードするにはどうすればよいですか?

このコードを使用して、index.htmlをUIWebviewにロードしています。

NSURL *url = [[NSBundle mainBundle] URLForResource:@"index" withExtension:@"html"];
NSString *html = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];

NSString *path = [[NSBundle mainBundle] bundlePath];
NSURL *baseURL = [NSURL fileURLWithPath:path];

[webView loadHTMLString:html baseURL:baseURL];

次に、私のhtmlは次のようになります。

...
<link rel="stylesheet" type="text/css" href="css/main.css" />
<script type="text/javascript" src="js/classes.js"></script>
<script type="text/javascript" src="js/animate.js"></script>
etc...

js /、css /、images /を削除すると、iOSはすべてが私のバンドルのルートにあると見なすため、すべてが機能します。しかし、それは、すべてを1つのディレクトリにダンプせずにプロジェクト間で同じコードを使用できないことを意味します(ラメ)。私のエンジニアは、この種の混乱に対処することはできません。

前もって感謝します。

4

2 に答える 2

3

簡単:フォルダをXcodeに追加するときは、必ずフォルダ参照として追加してください。

その後、それらは.appバンドルにフォルダーとして追加されます。

于 2012-10-15T22:24:05.580 に答える
1

あなたはこれを行うことができるはずです。注意すべき重要なことは、ファイルがプロジェクトにどのように追加されるかです。Xcodeを介してファイルを追加する場合は、「追加されたフォルダのグループを作成する」ではなく、「追加されたフォルダのフォルダ参照を作成する」に必ずチェックを入れてください。

参照

于 2012-10-15T22:24:39.293 に答える