Xamarin Native Webview Android



我在Xamarin Android应用中有一个WebView,但是当我想使用webview.navigate.navigate.navigate.navigate时,它在事件列表中并不符合。我想在用户导航时执行代码。但是就像我说的那样,我没有导航活动。

请帮助我。

我正面临着类似的东西,并通过实现自定义 webViewClient 和设置 WebView 'S 来解决它。WebViewClient 使用方法: setWebViewClient 。以此代码为例:

public class CustomWebViewClient : WebViewClient
{
    public event EventHandler<bool> OnPageLoaded;
    public override bool ShouldOverrideUrlLoading(WebView view, IWebResourceRequest request)
    {
        view.LoadUrl(request.Url.ToString());
        return true;
    }
    public override void OnPageStarted(WebView view, string url, global::Android.Graphics.Bitmap favicon)
    {
        base.OnPageStarted(view, url, favicon);
    }
    public override void OnPageFinished(WebView view, string url)
    {
        OnPageLoaded?.Invoke(this, true);
    }
    public override void OnReceivedError(WebView view, IWebResourceRequest request, WebResourceError error)
    {
        OnPageLoaded?.Invoke(this, false);
    }
}

以及您的活动:

var wbMain = FindViewById<WebView>(Resource.Id.wbMain);
var customWebViewClient = new CustomWebViewClient();
customWebViewClient.OnPageLoaded += CustomWebViewClient_OnPageLoaded;
wbMain.SetWebViewClient(customWebViewClient);
wbMain.LoadUrl("http://the.page.to.load");

最新更新