1.使用WebView进行浏览器嵌套时, WebView会打开手机中默认浏览器,而不是嵌套在WebView当中。web
解决方法:重写WebViewClient
的ShouldOverrideUrlLoading
方法。浏览器
public class WebViewCustClient : WebViewClient { public override bool ShouldOverrideUrlLoading(WebView view, string url) { view.LoadUrl(url); return base.ShouldOverrideUrlLoading(view, url); } public override void OnPageStarted(WebView view, string url, Bitmap favicon) { base.OnPageStarted(view, url, favicon); } }
2.打开www.baidu.com
等页面没问题,可是打开一些页面加载不出显示为空白时。ide
解决方法:对WebSetting
的设置所有设置。ui
WebView webview = FindViewById<WebView>(Resource.Id.webView1); //设置可自由缩放网页 WebSettings set = webview.Settings; set.JavaScriptCanOpenWindowsAutomatically = true; set.JavaScriptEnabled = true; set.SetSupportZoom(true); set.BuiltInZoomControls = true; set.UseWideViewPort = true; set.CacheMode = CacheModes.Default; set.SetLayoutAlgorithm(LayoutAlgorithm.SingleColumn); set.LoadWithOverviewMode = true; set.SetAppCacheEnabled(true); set.DomStorageEnabled = true; webview.SetWebViewClient(new WebViewCustClient()); webview.LoadUrl("");