我添加了
this.Control.SetWebViewClient(new ExtendedWebViewClient());
在自定义渲染器中,用于获取页面加载的事件和ShouldOverrideUrlLoading方法。
我想在另一个浏览器中打开webview中的超链接。 但是,如果我在ShouldOverrideUrlLoading中启动更粗略的活动,OnPage加载自己会调用此方法,并将在另一个浏览器中打开。
是否有方法检查要加载的URL是否由超链接点击触发?
公共类ExtendedWebViewClient:WebViewClient {
public override bool ShouldOverrideUrlLoading(Android.Webkit.WebView view, IWebResourceRequest request)
{
isRedirected = request.IsRedirect;
return base.ShouldOverrideUrlLoading(view, request);
}
public override bool ShouldOverrideUrlLoading(Android.Webkit.WebView view, string url)
{
return base.ShouldOverrideUrlLoading(view, url);
}
public override void OnPageFinished(Android.Webkit.WebView view, string url)
{
base.OnPageFinished(view, url);
}
public override void OnPageStarted(Android.Webkit.WebView view, string url, Bitmap favicon)
{
base.OnPageStarted(view, url, favicon);
}
}