UIWebView bietet drei Möglichkeiten zum Laden von Seiten:
- (void)loadRequest:(NSURLRequest *)request;
- (void)loadDHTMLString:(NSString *)string baseURL: (NSURL *)baseURL;
- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)textEncodingName baseURL:(NSURL *)baseURL;
Hier Ich werde nur auf die ersten beiden eingehen, der letzte sollte nicht häufig verwendet werden.
- (void)loadRequest:(NSURLRequest *)request
Diese Methode wird häufig zum Laden von Webseiten unter der angegebenen URL verwendet, kann aber tatsächlich auch zum Laden lokaler Ressourcen verwendet werden. und es ist sehr praktisch.
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"index" ofType:@"html" inDirectory:@"Htmls"];
[self.webView loadRequest:[NSURLRequest requestWithURL :[NSURL fileURLWithPath:filePath]]];
Dadurch wird Htmls/index.html in die Webansicht geladen. Es ist zu beachten, dass der Htmls-Ordner durch „Ordnerverweise für alle hinzugefügten Ordner erstellen“ und nicht standardmäßig eingeführt wird. Dies hat zwei Vorteile: Erstens stimmt die Verzeichnisstruktur der Ressourcen mit dem aktuellen Projekt überein und ist nicht im .app-Paket verstreut. Daher können die Ressourcendateien leicht von HTML gefunden werden. Zweitens werden die Dateien im Finder-Verzeichnis direkt dem Projekt zugeordnet, ohne dass Dateien in Xcode manuell hinzugefügt oder gelöscht werden müssen.
In index.html zitierte der Front-End-Ingenieur das Stylesheet
Der Pfad zur Datei base.CSS lautet tatsächlich xxx.app/Htmls/css/base.css, nicht xxx .app /css/base.css kann gefunden werden, da LoadReqest den Pfad der aktuell geladenen HTML-Datei als Basis-URL verwendet.
- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL
Diese Methode wird verwendet, um HTML-Code direkt zu laden. Diese Methode wird empfohlen, wenn der HTML-Code nicht in der Datei vorhanden ist. Natürlich können Sie diese Methode auch verwenden, um den Code aus lokalem HTML zu lesen und ihn dann zu laden. Bitte beachten Sie jedoch, dass die BaseURL zu diesem Zeitpunkt korrekt übergeben werden muss, da sonst die im HTML referenzierten Ressourcen nicht gefunden werden.
Um mit dem obigen Beispiel fortzufahren und Ressourcen korrekt zu laden, müssen Sie Folgendes schreiben:
NSString *baseURL = [[[NSBundle mainBundle] resourcesPath] stringByAppendingPathComponent:@"Htmls"];
[self.webView loadHTMLString:htmlString baseURL:[NSURL fileURLWithPath:baseURL]];
Auf diese Weise können sich Front-End-Ingenieure daran gewöhnen, mit Ihnen zusammenzuarbeiten, um ~
Das ist die HTML-Lademethode für den Inhalt von Webseiten. Weitere verwandte Artikel finden Sie auf der chinesischen PHP-Website (www.php.cn)!