2017-02-06 3 views
2

Ich bin in der Lage eine lokale HTML-Datei in meine WebView wie folgt aus (das funktioniert gut) laden:Lokale CSS-Datei in Xamarin IOS WebView laden?

var fileName = "Views/Default.html"; 
var localHtmlUrl = Path.Combine(NSBundle.MainBundle.BundlePath, fileName); 
var url = new NSUrl(localHtmlUrl, false); 
var request = new NSUrlRequest(url); 
WebView.LoadRequest(request); 

Ich möchte eine CSS-Datei (auch lokal) in meinem HTML-Datei verweisen:

<link href="Content/style.css" rel="stylesheet"> 

Die CSS-Datei existiert innerhalb eines Ordners Content, die Build-Aktion wird für diese Datei auf Inhalt gesetzt.

Wie kann ich die betreffende CSS-Datei über meine HTML-Datei referenzieren/laden? Möglich?

UPDATE: Hatte CSS und HTML in separaten Ordnern. Setzen Sie sie beide in einen Ordner Content dann aktualisiert die hrefs, die das Problem bei der Verwendung von LoadRequest gelöst.

Antwort

3

prüft Link https://developer.xamarin.com/recipes/ios/content_controls/web_view/load_local_content/

Abschnitt Zusätzliche Informationen

Html in Code erzeugt wird, kann auch angezeigt werden, die für die Anpassung des Inhalts nützlich ist. Um eine HTML-Zeichenfolge anzuzeigen, verwenden Sie die LoadHtmlString-Methode anstelle von LoadRequest. Übergeben Sie den Pfad zum Inhalt Verzeichnis hilft der Webansicht resolve relativ Urls im Html, wie Links, Bilder, CSS etc.

// assumes you've placed all your files in a Content folder inside your app 
string contentDirectoryPath = Path.Combine (NSBundle.MainBundle.BundlePath, "Content/"); 
string html = "<html><a href='Home.html'>Click me</a></html>"; 
webView.LoadHtmlString(html, new NSUrl(contentDirectoryPath, true)); 
+0

richtige Antwort, aber besser, wenn Sie den Code hier bei copy-paste der Link wird in der Zukunft gebrochen – xleon

+0

eine Antwort aktualisiert –

+0

Ich habe das gesehen, aber 'LoadHtmlString' nimmt eine Zeichenfolge. Muss ich * all * meine HTML-Dateien als String nur für diese Methode lesen? Ehrlich gesagt, scheint mir etwas zu fehlen. – mxmissile

Verwandte Themen