安卓学习-WebView

#WebView
##作用
    加载HTML的一些信息
    使用的原因:
    1.兼容已有的项目
    2.可以动态更新
##缺点
    耗电,加载慢,手机发热
##基本用法
    WebView wv=(WebView) findViewById(R.id.wv);
    wv.loadUrl(url);//加载网页
    wv.getSettings().setDefaultTextEncodingName("utf-8");//设置编码格式
    wv.getSettings().setJavaScriptEnabled(true); //设置支持Javascript
##常用方法
### wv.setWebViewClient(new WebViewClient());
    1.shouldOverrideUrlLoading
       1.当页面发生2次跳转时调用,默认返回false
       2.返回fase时就是当前WebView处理全部跳转
       3.返回true时代表当前的应用处理跳转(1.重新调用loadUrl方法打开2.隐士意图跳转浏览器打开)
    2.onPageStarted 开始进度,可以显示进度条
    3.onPageFinished 结束进度,可隐藏进度条
    4.onReceivedError网页加载错误时回调
        1.加载一个本地的错误页面
        2.隐藏WebView,显示含有错误信息的TextView
### wv.setWebChromeClient(new WebViewClient());
    1.onProgressChanged 进度改变调用,可更新进度条
    2.onReceivedTitle 获得当前网页的title,加载时调用,返回时不调用
### wv.setDownloadListener(new DownloadListener());
    1.onDownloadStart 下载文件
        1.自己下载
        2.隐式意图跳转系统下载
##Android与JS交互
    1)JS调用Android方法
    webView.addJavascriptInterface(Object obj,String name).
    2)Android调用JS的方法
    webView.loadUrl("javascript:方法名('参数')");
##加载本地html文件
     1.如果html文件存于assets:则加前缀:file:///android_asset/
       2.如果html文件存于sdcard:则加前缀:content://com.android.htmlfileprovider/sdcard/
      注意:content前缀可能导致异常,直接使用file:///sdcard/ or file:/sdcard也可以

你可能感兴趣的:(android)