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);
    }
});
 大概
相關文章
相關標籤/搜索