Android平台下 Webview加载h5页面,交互,及本地化缓存

webview经常使用于加载一些和iOS公用或者格式比较复杂的页面,像新闻详情页面,因为图片和文字位置,数量都不肯定,致使在android下xml没办法编写。html

使用的话也是很是简单,在xml文件中直接引用<WebView>控件便可。在类中的使用方法,android

WebSettings settings = webview.getSettings();
settings.setWebChromeClient(new WebChromeClient() {
});
settings.setWebViewClient(new WebViewClient(){
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);
        return false;
    }
});
settings.setJavaScriptEnabled(true);
settings.setAllowFileAccess(true);// 容许访问文件   
settings.setBuiltInZoomControls(true);// 设置显示缩放按钮   
settings.setSupportZoom(true);// 支持缩放 
settings.setTextSize(); // 这里的设置字体大小并不指字号,textSize形式的属性,共有5个,须要用到的能够本身查看设置
settings.setAllowFileAccess(true);// 容许访问文件   
settings.setBuiltInZoomControls(true);// 设置显示缩放按钮   
settings.setSupportZoom(true);// 支持缩放
//********************************************* 须要支持缓存的设置
// 设置支持本地存储
settings.setDatabaseEnabled(true);
//取得缓存路径
String path = getApplicationContext().getDir("cache", Context.MODE_PRIVATE).getPath();
//设置路径
settings.setDatabasePath(path);
//设置支持DomStorage
settings.setDomStorageEnabled(true);
//设置存储模式
settings.setCacheMode(WebSettings.LOAD_DEFAULT);
//设置缓存
settings.setAppCacheEnabled(true);
webView.requestFocus();
//***********************************************
webView.loadUrl("www.baidu.com"); // 加载普通网页,
webView.loadData(); // </p> 
webView.loadDataWithBaseURL(); // 返回的html标签,本地解析  ,不一样的加载方式,可能理解有错误,谨慎使用
// 若是有页面交互的话须要写接口调用了
webView.addJavascriptInterface(new XXXXJavascriptInterface(),"h5");
// 设置顶部进度条,比例按照参数计算就好了
fullWebView.setWebChromeClient(new WebChromeClient() {
    @Override
    public void onProgressChanged(WebView view, int newProgress) {
        super.onProgressChanged(view, newProgress);
    }
});
 大概
相关文章
相关标签/搜索