Ich versuche, eine lokale HTML-Seite in einer Webansicht mit Xamarin-Formularen zu laden. Ich benutze das grundlegende Beispiel in der Dev-Dokumentation, obwohl ich eine URL zum Laden bekommen kann Ich kann nicht meine eigenen HTML-Seiten laden. Dies muss nur über Android erfolgen, sodass Sie sich keine Sorgen um IOS und Windows machen müssen.Laden von lokalem HTML mit WebView Xamarin Forms
XAML:
<WebView
x:Name="webviewjava"></WebView>
Der Code hinter:
public partial class javscriptExample : ContentPage
{
public interface IBaseUrl { string Get(); }
public javscriptExample()
{
InitializeComponent();
var source = new HtmlWebViewSource();
source.BaseUrl = DependencyService.Get<IBaseUrl>().Get();
webviewjava.Source = source;
}
}
Die plattformspezifische Datei (LocalFile.cs): Just beachten dies als Android Asset gesetzt.
[assembly: Dependency(typeof(LocalFiles))]
namespace maptesting.Droid
{
public class LocalFiles: IBaseUrl
{
public string Get()
{
return "file:///android_asset/";
}
}
}
und unter dem Asset-Ordner gibt es eine "TestWebPage.html", auch als Android-Asset festgelegt.
Obwohl ich nicht weiß, was das Problem ist, habe ich es durch Debugging und die Basis-URL ist leer zurückkommen. Nur um klar zu sein, dass keine Datei nicht gefunden wird, ist der Bildschirm einfach leer. Auch, und ich bin nicht sicher, ob dies einen Unterschied macht. In der Datei LocalFiles.cs gibt es keine Syntaxhervorhebung für 'IBaseUrl'. Ich bin mir also nicht sicher, ob es es "sehen" kann.
Irgendwelche Ideen?
Danke, ich werde mir das anschauen – user3355961