UIWebView baseURL und absoluter Pfad
Ich habe eine HTML-Seite, die so aufgebaut ist:
<html>
<head>
<link rel="stylesheet" href="/style.css" />
</head>
<body>
</body>
</html>
Es wird in meinem Dokumentenverzeichnis gespeichert:
/Users/username/Library/Application Support/iPhone Simulator/5.1/Applications/12345-ID/Documents/mysite/index.html
Ich habe die style.css auch im Dokumentenverzeichnis gespeichert:
/Users/username/Library/Application Support/iPhone Simulator/5.1/Applications/12345-ID/Documents/mysite/style.css
Aber jetzt, wenn ich versuche, den HTML-Code mit folgendem Befehl in meine Webansicht zu laden:
NSURL *test = [NSURL URLWithString:@"file:///Users/username/Library/Application Support/iPhone%20Simulator/5.1/Applications/12345-ID/Documents/mysite/"]
[myWebView loadHTMLString:<the content retrieved from index.html> baseURL:test];
Das CSS wird nicht geladen, wenn ich die Anforderung an das Stylesheet mit einem NSURLProtocol abfange. Ich kann sehen, dass die Anforderung falsch ist. Es wird versucht, Folgendes anzufordern:
Datei: ///style.css
anstelle der vollen baseURL. Jetzt kann ich dieses Problem lösen, indem ich das / vor /style.css in der HTML-Datei entferne. Aber gibt es eine einfache Möglichkeit, dies im nativen Code zu beheben, ohne den HTML-Code zu ändern?