(3)载入页面完成的事件
public void onPageFinished(WebView view, String url) {
}
(4)载入页面开始的事件
public void onPageStarted(WebView view, String url, Bitmap favicon) {
}
这个事件就是开始载入页面调用的,通常我们可以在这设定一个loading的页面,告诉用户程序在等待网络响应。
一、如果用WebView点链接看了很多页以后,如果不做任何处理,点击系统返回(Back)键,整个浏览器会调用finish()方法而结束自身,如果希望浏览的网页回退而不是退出浏览器,需要在当前Activity中处理并消费掉该Back事件。
覆盖Activity类的onKeyDown(int keyCoder,KeyEvent event)方法。
public boolean onKeyDown(int keyCode,KeyEvent event){
if(webView.canGoBack() && keyCode == KeyEvent.KEYCODE_BACK){
webview.goBack();// goBack()表示返回webView的上一页面
return true;
}
return false;
}
二、loadData()和loadDataWithBaseURL()使用的区别
loadData()中的html data中不能包含'#', '%', '', '?'四中特殊字符,出现这种字符就会出现解析错误,显示找不到网页还有部分html代码。
处理方法:我们需要用UrlEncoder编码为%23, %25, %27, %3f 。 可以使用以下两种代码,data为string类型的html代码 (1)webView.loadData(URLEncoder.encode(data, "utf-8"), "text/html", "utf-8"); (2)webView.loadDataWithBaseURL(null, data, "text/html", "utf-8", null);
WebView相关属性:
(1)设置WebView为透明:
android:background="#00000000" android:cacheColorHint="#00000000" WebView.setBackgroundColor(0);










