WebSettings 最全屬性說明

    1. setAllowContentAccess (boolean allow) 
      是否容許在WebView中訪問內容URL(Content Url),默認容許。內容Url訪問容許WebView從安裝在系統中的內容提供者載入內容。android

    2. setAllowFileAccess (boolean allow) 
      是否容許訪問文件,默認容許。注意,這裏只是容許或禁止對文件系統的訪問,Assets 和 resources 文件使用file:///android_assetfile:///android_res還是可訪問的。數據庫

    3. setAllowFileAccessFromFileURLs (boolean flag) 
      是否容許運行在一個URL環境(the context of a file scheme URL)中的JavaScript訪問來自其餘URL環境的內容,爲了保證安全,應該不容許。也請注意,這項設置隻影響對file schema 資源的JavaScript訪問,其餘形式的訪問,例如來自圖片HTML單元的訪問不受影響。爲了防止相同的域策略(same domain policy)對ICE_CREAM_SANDWICH以及更老機型的侵害,應該顯式地設置此值爲false。緩存

    4. setAllowUniversalAccessFromFileURLs (boolean flag) 
      是否容許運行在一個file schema URL環境下的JavaScript訪問來自其餘任何來源的內容,包括其餘file schema URLs. 參見setAllowFileAccessFromFileURLs(boolean),爲了確保安全,應該設置爲不容許,注意這項設置隻影響對file schema 資源的JavaScript訪問,其餘形式的訪問,例如來自圖片HTML單元的訪問不受影響。爲了防止相同的域策略(same domain policy)對ICE_CREAM_SANDWICH以及更老機型的侵害,應該顯式地設置此值爲false。ICE_CREAM_SANDWICH_MR1 以及更老的版本此默認值爲true,JELLY_BEAN以及更新版本此默認值爲false安全

    5. setAppCacheEnabled (boolean flag) 
      應用緩存API是否可用,默認值false, 結合setAppCachePath(String)使用。網絡

    6. setAppCachePath(String) 
      設置應用緩存文件的路徑。爲了讓應用緩存API可用,此方法必須傳入一個應用可寫的路徑。該方法只會執行一次,重複調用會被忽略。app

    7. setAppCacheMaxSize (long appCacheMaxSize) 
      已廢棄。設置應用緩存內容的最大值。所傳值會被近似爲數據庫支持的最近似值,所以這是一個指示值,而不是一個固定值。所傳值若小於數據庫大小不會讓數據庫調整大小。默認值是MAX_VALUE,建議將默認值設置爲最大值。dom

    8. setBlockNetworkImage (boolean flag) 
      是否禁止從網絡(經過http和https URI schemes訪問的資源)下載圖片資源,默認值爲false。注意,除非getLoadsImagesAutomatically()返回true,不然該方法無效。還請注意,即便此項設置爲false,使用setBlockNetworkLoads(boolean)禁止全部網絡加載也會阻止網絡圖片的加載。當此項設置的值從true變爲false,WebView當前顯示的內容所引用的網絡圖片資源會自動獲取。ide

    9. setBlockNetworkLoads (boolean flag) 
      是否禁止從網絡下載數據,若是app有INTERNET權限,默認值爲false,不然默認爲true。使用setBlockNetworkImage(boolean) 只會禁止圖片資源的加載。注意此值由true變爲false,當前WebView展現的內容所引用的網絡資源不會自動加載,直到調用了重載。若是APP沒有INTERNET權限,設置此值爲false會拋出SecurityException。佈局

    10. setBuiltInZoomControls (boolean enabled) 
      是否使用內置的縮放機制。內置的縮放機制包括屏幕上的縮放控件(浮於WebView內容之上)和縮放手勢的運用。經過setDisplayZoomControls(boolean)能夠控制是否顯示這些控件,默認值爲false。性能

    11. setCacheMode (int mode) 
      重寫使用緩存的方式,默認值LOAD_DEFAULT。緩存的使用方式基於導航類型,正常的頁面加載,檢測緩存,須要時緩存內容復現。導航返回時,內容不會復現,只有內容會從緩存盤中恢復。該方法容許客戶端經過指定LOAD_DEFAULT, LOAD_CACHE_ELSE_NETWORK, LOAD_NO_CACHE or LOAD_CACHE_ONLY的其中一項來重寫其行爲。

    12. setCursiveFontFamily (String font) 
      設置WebView字體庫字體,默認「cursive」

    13. setDatabaseEnabled (boolean flag) 
      數據庫存儲API是否可用,默認值false。如何正確設置數據存儲API參見setDatabasePath(String)。該設置對同一進程中的全部WebView實例均有效。注意,只能在當前進程的任意WebView加載頁面以前修改此項,由於此節點以後WebView的實現類可能會忽略該項設置的改變。

    14. setDatabasePath (String databasePath) 
      已廢棄,數據庫路徑由實現(implementation)管理,調用此方法無效。 
      設置數據庫的存儲路徑,爲了保證數據庫正確運行,該方法必須使用一個應用可寫的路徑。此方法只能執行一次,重複調用會被忽略。

    15. setDefaultFixedFontSize (int size) 
      設置默認固定的字體大小,默認爲16,可取值1到72

    16. setDefaultFontSize (int size) 
      設置默認的字體大小,默認16,可取值1到72

    17. setDefaultTextEncodingName (String encoding) 
      設置默認的字符編碼集,默認」UTF-8」.

    18. setDefaultZoom (WebSettings.ZoomDensity zoom) 
      已廢棄。設置默認的縮放密度,必須在UI線程調用,默認值MEDIUM.該項設置在新應用中不推薦使用。若是WebView用於展現手機頁面,能夠經過調整頁面的’meta viewport’ 標記中的’width’ 和 ‘initial-scale’屬性實現預期效果,對於漏用標記的頁面,可使用setInitialScale(int)和setUseWideViewPort(boolean) .

    19. setDisplayZoomControls (boolean enabled) 
      使用內置的縮放機制時是否展現縮放控件,默認值true。參見setBuiltInZoomControls(boolean).

    20. setDomStorageEnabled (boolean flag) 
      DOM存儲API是否可用,默認false。

    21. setEnableSmoothTransition (boolean enable) 
      已廢棄,未來會成爲空操做(no-op),設置當panning或者縮放或者持有當前WebView的window沒有焦點時是否容許其光滑過渡,若爲true,WebView會選擇一個性能最大化的解決方案。例如過渡時WebView的內容可能不更新。若爲false,WebView會保持精度(fidelity),默認值false。

    22. setFantasyFontFamily (String font) 
      設置fantasy字體集(font family)的名字默認爲「fantasy」

    23. setFixedFontFamily (String font) 
      設置固定的字體集的名字,默認爲」monospace」。

    24. setGeolocationDatabasePath (String databasePath) 
      定位數據庫的保存路徑,爲了確保定位權限和緩存位置的持久化,該方法應該傳入一個應用可寫的路徑。

    25. setGeolocationEnabled (boolean flag) 
      定位是否可用,默認爲true。請注意,爲了確保定位API在WebView的頁面中可用,必須遵照以下約定: 
      (1) app必須有定位的權限,參見ACCESS_COARSE_LOCATION, ACCESS_FINE_LOCATION; 
      (2) app必須提供onGeolocationPermissionsShowPrompt(String, GeolocationPermissions.Callback)回調方法的實現,在頁面經過JavaScript定位API請求定位時接收通知。 
      做爲可選項,能夠在數據庫中存儲歷史位置和Web初始權限,參見setGeolocationDatabasePath(String).

    26. setJavaScriptCanOpenWindowsAutomatically (boolean flag) 
      讓JavaScript自動打開窗口,默認false。適用於JavaScript方法window.open()。

    27. setJavaScriptEnabled (boolean flag) 
      設置WebView是否容許執行JavaScript腳本,默認false,不容許。

    28. setLayoutAlgorithm (WebSettings.LayoutAlgorithm l) 
      設置佈局,會引發WebView的從新佈局(relayout),默認值NARROW_COLUMNS

    29. setLightTouchEnabled (boolean enabled) 
      已廢棄。從 JELLY_BEAN 開始,該設置無效。容許使用輕觸摸作出選擇和光標懸停。

    30. setLoadWithOverviewMode (boolean overview) 
      是否容許WebView度超出以概覽的方式載入頁面,默認false。即縮小內容以適應屏幕寬度。該項設置在內容寬度超出WebView控件的寬度時生效,例如當getUseWideViewPort() 返回true時。

    31. setLoadsImagesAutomatically (boolean flag) 
      WebView是否下載圖片資源,默認爲true。注意,該方法控制全部圖片的下載,包括使用URI嵌入的圖片(使用setBlockNetworkImage(boolean) 只控制使用網絡URI的圖片的下載)。若是該設置項的值由false變爲true,WebView展現的內容所引用的全部的圖片資源將自動下載。

    32. setMediaPlaybackRequiresUserGesture (boolean require) 
      WebView是否須要用戶的手勢進行媒體播放,默認值爲true。

    33. setMinimumFontSize (int size) 
      設置最小的字號,默認爲8

    34. setMinimumLogicalFontSize (int size) 
      設置最小的本地字號,默認爲8。

    35. setMixedContentMode (int mode) 
      當一個安全的來源(origin)試圖從一個不安全的來源加載資源時配置WebView的行爲。默認狀況下,KITKAT及更低版本默認值爲MIXED_CONTENT_ALWAYS_ALLOW,LOLLIPOP版本默認值MIXED_CONTENT_NEVER_ALLOW,WebView首選的最安全的操做模式爲MIXED_CONTENT_NEVER_ALLOW ,不鼓勵使用MIXED_CONTENT_ALWAYS_ALLOW。

    36. setNeedInitialFocus (boolean flag) 
      調用requestFocus(int, android.graphics.Rect)時是否須要設置節點獲取焦點,默認值爲true。

    37. setOffscreenPreRaster (boolean enabled) 
      當WebView切換到後臺但仍然與窗口關聯時是否raster tiles,打開它能夠避免在WebView從後臺切換到前臺時從新繪製,默認值false。在這種模式下後臺的WebView佔用更多的內存。請按以下準則顯示內存的使用:

      1. WebView的尺寸不能比設備的屏幕尺寸更大;
      2. 限制在少數WebView上使用該模式;
      3. 在可見的WebView和即將顯現的WebView上使用;
    38. setPluginState (WebSettings.PluginState state) 
      在API18以上已廢棄。將來將不支持插件,不要使用。告訴WebView啓用、禁用或者有即用(on demand)的插件,即用模式是指若是存在一個能夠處理嵌入內容的插件,會顯示一個佔位圖標,點擊時開啓。默認值OFF。

    39. setRenderPriority (WebSettings.RenderPriority priority) 
      在API18以上已廢棄。不建議調整線程優先級,將來版本不會支持這樣作。設置繪製(Render,不少書上翻譯成渲染,貌似很專業,可是不易懂,不敢苟同)線程的優先級。不像其餘設置,同一進程中只需調用一次,默認值NORMAL。

    40. setSansSerifFontFamily (String font) 
      設置無襯線字體集(sans-serif font family)的名字。默認值」sans-serif」.

    41. setSaveFormData (boolean save) 
      WebView是否保存表單數據,默認值true。

    42. setSavePassword (boolean save) 
      API18以上版本已廢棄。將來版本將不支持保存WebView中的密碼。設置WebView是否保存密碼,默認true。

    43. setSerifFontFamily (String font) 
      設置襯線字體集(serif font family)的名字,默認「sans-serif」。

    44. setStandardFontFamily (String font) 
      設置標準字體集的名字,默認值「sans-serif」。

    45. setSupportMultipleWindows (boolean support) 
      設置WebView是否支持多窗口。若是設置爲true,主程序要實現onCreateWindow(WebView, boolean, boolean, Message),默認false。

    46. setSupportZoom (boolean support) 
      WebView是否支持使用屏幕上的縮放控件和手勢進行縮放,默認值true。設置setBuiltInZoomControls(boolean)可使用特殊的縮放機制。該項設置不會影響zoomIn() and zoomOut()的縮放操做。

    47. setTextSize (WebSettings.TextSize t) 
      API14版本以上已廢棄。請取代使用setTextZoom(int)。設置頁面文本的尺寸,默認NORMAL。

    48. setTextZoom (int textZoom) 
      設置頁面上的文本縮放百分比,默認100。

    49. setUseWideViewPort (boolean use) 
      WebView是否支持HTML的「viewport」標籤或者使用wide viewport。設置值爲true時,佈局的寬度老是與WebView控件上的設備無關像素(device-dependent pixels)寬度一致。當值爲true且頁面包含viewport標記,將使用標籤指定的寬度。若是頁面不包含標籤或者標籤沒有提供寬度,那就使用wide viewport。

    50. setUserAgentString (String ua) 
      設置WebView的用戶代理字符串。若是字符串爲null或者empty,將使用系統默認值。注意從KITKAT版本開始,加載網頁時改變用戶代理會讓WebView再次初始化加載。

    51. supportMultipleWindows () 
      獲取WebView是否支持多窗口的值。

    52. supportZoom () 
      獲取WebView是否支持縮放的值。本文轉自:https://blog.csdn.net/KevinsCSDN/article/details/52241334

相關文章
相關標籤/搜索