0
私はXamarinのAndroid AppでWebviewを持っていますが、Webview.navigateを使用したいときは、これはイベントリストには存在しません。私はユーザーが移動するときにコードを実行したい。しかし、私はナビゲートイベントがないと言ったのと同じです。XamarinネイティブWebview Android
私を助けてください。
私はXamarinのAndroid AppでWebviewを持っていますが、Webview.navigateを使用したいときは、これはイベントリストには存在しません。私はユーザーが移動するときにコードを実行したい。しかし、私はナビゲートイベントがないと言ったのと同じです。XamarinネイティブWebview Android
私を助けてください。
私は似たような直面し、カスタムWebViewClientを実装することにより、および方法使用してWebViewのさん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");
はverryありがとうございました!これは私の問題を解決した –