简介
1.WebView是一个基于webkit引擎、展现web页面的控件;(使用时注意加网络权限)
2.除了具有一般View的属性和设置外,还可以对url请求、页面加载、渲染、页面交互进行强大的处理;
2.Android的Webview在低版本和高版本采用了不同的webkit版本内核,4.4后直接使用了Chrome;

加载url


WebView的生命周期

WebSettings类
简介:对WebView进行配置和管理

WebViewClient类
简介:处理各种通知 & 请求事件(对webview页面加载管理、如url重定向)
(网页加载的整个生命周期,开始-加载中-结束-拦截-失败处理都在此操作)

shouldOverrideUrlLoading:
1)url重定向以及点击页面某些链接会执行此方法
2)默认返回:return super.shouldOverrideUrlLoading(view, url),调父类方法,跳转手机浏览器;
3)return true:自己处理请求(eg:跳activity),url已经加载完成,即使url会重定向也不再进行加载;
(即点一个链接,不会跳转网页而是跳转activity)
4)return false:webView自行处理(一般是将url加载出来),该重定向还是重定向,直到加载完成 ;
(即点击一个链接,若重定向多次,既跳链接又多次跳activity)
onPageStarted:页面加载时执行,一般用作重定向的初始化操作;
在app内加载网页:mWebView.setWebViewClient(new WebViewClient);
WebChromeClient类
简介:辅助 WebView 处理 Javascript 的对话框,网站图标,网站标题,进度条等等。

网友评论