通過Android webview所提供的WebSettings
對(duì)象栗菜,開發(fā)者可以根據(jù)業(yè)務(wù)需求對(duì)webview進(jìn)行一系列的基本配置:
WebSettings webSetting=mWebview.getSettings();
這里介紹一些常見的配置信息:
- 顯示相關(guān)
//是否支持縮放进胯,默認(rèn)true
setSupportZoom(boolean support)
// 是否使用WebView內(nèi)置的縮放組件荠列,由浮動(dòng)在窗口上的縮放控制和手勢(shì)縮放控制組成田炭,默認(rèn)false
setBuiltInZoomControls(boolean enabled)
// 是否顯示窗口懸浮的縮放控制豹芯,默認(rèn)true
setDisplayZoomControls(boolean enabled)
// 是否啟動(dòng)概述模式瀏覽界面粟焊,當(dāng)頁面寬度超過WebView顯示寬度時(shí)逢渔,縮小頁面適應(yīng)WebView。默認(rèn)false
setLoadWithOverviewMode(boolean overview)
// 設(shè)置頁面文字縮放百分比飞蹂,默認(rèn)100%
setTextZoom(int textZoom)
// 是否支持ViewPort的meta tag屬性几苍,如果頁面有ViewPort meta tag 指定的寬度,則使用meta tag指定的值陈哑,否則默認(rèn)使用寬屏的視圖窗口
setUseWideViewPort(boolean use)
// 指定WebView的頁面布局顯示形式妻坝,調(diào)用該方法會(huì)引起頁面重繪。默認(rèn)LayoutAlgorithm#NARROW_COLUMNS
setLayoutAlgorithm(LayoutAlgorithm l)
- 存儲(chǔ)相關(guān)
// 是否保存表單數(shù)據(jù)惊窖,默認(rèn)false
setSaveFormData(boolean save)
// 是否允許訪問WebView內(nèi)部文件刽宪,默認(rèn)true
setAllowFileAccess(boolean allow)
// 是否允許獲取WebView的內(nèi)容URL ,可以讓W(xué)ebView訪問ContentPrivider存儲(chǔ)的內(nèi)容界酒。 默認(rèn)true
setAllowContentAccess(boolean allow)
// 是否允許Cache圣拄,默認(rèn)false』傩溃考慮需要存儲(chǔ)緩存庇谆,應(yīng)該為緩存指定存儲(chǔ)路徑setAppCachePath
setAppCacheEnabled(boolean flag)
// 設(shè)置Cache API緩存路徑。
setAppCachePath(String appCachePath)
// 是否存儲(chǔ)頁面DOM結(jié)構(gòu)凭疮,默認(rèn)false饭耳。
setDomStorageEnabled(boolean flag)
/**
* 基于WebView導(dǎo)航的類型使用緩存:正常頁面加載會(huì)加載緩存并按需判斷內(nèi)容是否需要重新驗(yàn)證。
* 如果是頁面返回执解,頁面內(nèi)容不會(huì)重新加載寞肖,直接從緩存中恢復(fù)。setCacheMode允許客戶端根據(jù)指定的模式來
* 使用緩存。
* LOAD_DEFAULT 默認(rèn)加載方式
* LOAD_CACHE_ELSE_NETWORK 按網(wǎng)絡(luò)情況使用緩存
* LOAD_NO_CACHE 不使用緩存
* LOAD_CACHE_ONLY 只使用緩存
*/
setCacheMode(int mode)
- 其他
// 設(shè)置頁面的編碼格式新蟆,默認(rèn)UTF-8
setDefaultTextEncodingName(String encoding)
// 設(shè)置WebView代理耕姊,默認(rèn)使用默認(rèn)值
setUserAgentString(String ua)