android webview学习总结

android webview要点
1:权限
2:html资源位置加载方式(loacal或net)
3:webView的加载方式两种
4:webseting
5:webviewclient
6:webchromeclient
7:js和android间调用
1:权限
在Androidmainfest.xml中添加权限
<uses-permission android:name="android.permission.INTERNET" />
(如果加载的是本地的资源的话可以不加)

2:html资源位置加载方式(loacal或net)
资源在本地,放在assets中加载方式
webview.loadUrl("file:///android_asset/XXX.html");
资源在网络服务器
webView.loadUrl("http://www.google.com");

3:webView的加载方式两种
第一种:在布局文件中配置,然后通过findviewbyid加载。
第二种:在程序中动态生成.
       WebView webview = new WebView(this);
       setContentView(webview);

4:websetting
设置webview的相关属性
WebSetting常用方法
setAllowFileAccess 启用或禁用WebView访问文件数据
setBlockNetworkImage 是否显示网络图像
setBuiltInZoomControls 设置是否支持缩放 
setCacheMode 设置缓冲的模式
setDefaultFontSize 设置默认的字体大小
setDefaultTextEncodingName 设置在解码时时候用的默认编码
setFixedFontFamily 设置固定使用的字体
setJavaScriptEnabled 设置是否支持Javascript(很重要,长会用到)setLayoutAlgorithm 设置布局方式
setLightTouchEnabled 设置用鼠标激活被选项
setSupportZoom

5:webviewclient
WebViewClient 主要处理关于页面跳转,页面请求等操作
常用方法
doUpdateVisitedHistory 更新历史记录
onFormResubmission 应用程序重新请求网页数据
onLoadResource 加载指定地址提供的资源
onPageFinished 网页加载完毕
onPageStarted 网页开始加载
onReceivedError 报告错误信息
onScaleChanged WebView发生改变
shouldOverrideUrlLoading 控制新的连接在当前WebView中打开(常用于解决webview中点击连接打开浏览器问题)

6:webchromeclient
其实对于WebChromeClient,主要处理关于脚本的执行,或progress 等操作
onCloseWindow 关闭WebView
onCreateWindow 创建WebView
onJsAlert 处理Javascript中的Alert对话框
onJsConfirm处理Javascript中的Confirm对话框
onJsPrompt处理Javascript中的Prompt对话框
onProgressChanged 加载进度条改变
onReceivedlcon 网页图标更改
onReceivedTitle 网页Title更改
onRequestFocus WebView显示焦点

7:js和android间调用
js调java方法(可有返回值)
java代码
webview.addJavascriptInterface(new Object(){
        public void println(final int j) {//将要调用的方法
            System.out.println("A"); 
        }
     }, "demo");//demo为对象的别名
js中代码
<a onclick="window.demo.println()">b.c</a>
java调用js方法(无返回值,时间较长用户体验不好建议少用)
js代码
<script type="text/javascript">
function al (){
alert("aaaaaaaa");
}
</script>
java代码
webview.loadUrl("javascript:al()");

猜你喜欢

转载自zjingye.iteye.com/blog/1879240