Nes*_*tor 5 xamarin.android xamarin xamarin.forms
我打算将本地 HTML 文件加载到 Xamarin Forms WebView 中。
我已将 HTML 文件添加到该assets/HTML文件夹中,并将其“构建操作”设置为 AndroidAsset。
我已经实现了基本 URL 查找器界面:
public class BaseUrl_Android:IBaseUrl
{
public string Get()
{
return "file:///android_asset/";
}
}
Run Code Online (Sandbox Code Playgroud)
我尝试在共享可移植代码中使用此文件来加载文件:
string baseUrl = DependencyService.Get<IBaseUrl>().Get();
string url = baseUrl + "HTML/local.html";
myWebView.Source = url;
Run Code Online (Sandbox Code Playgroud)
我还尝试了自定义 WebViewRenderer,并使用了以下代码:
protected override void OnElementChanged(ElementChangedEventArgs<WebView> e)
{
base.OnElementChanged(e);
if (e.OldElement == null)
{
// lets get a reference to the native control
var webView = (global::Android.Webkit.WebView)Control;
// do whatever you want to the WebView here!
webView.LoadUrl(DependencyService.Get<IBaseUrl>().Get()+"HTML/local.html");
webView.SetWebViewClient(new MyWebViewClient());
}
Run Code Online (Sandbox Code Playgroud)
使用这两种解决方案我都会收到错误:

我还应该尝试什么?
您的源应该是 HtmlWebViewSource 类型而不是字符串。
var html = new HtmlWebViewSource ();
html.BaseUrl = DependencyService.Get<IBaseUrl> ().Get ();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9491 次 |
| 最近记录: |