通过Android webview所提供的WebSettings
对象,开发者可以根据业务需求对webview进行一系列的基本配置:
WebSettings webSetting=mWebview.getSettings();
这里介绍一些常见的配置信息:
- 显示相关
//是否支持缩放,默认true
setSupportZoom(boolean support)
// 是否使用WebView内置的缩放组件,由浮动在窗口上的缩放控制和手势缩放控制组成,默认false
setBuiltInZoomControls(boolean enabled)
// 是否显示窗口悬浮的缩放控制,默认true
setDisplayZoomControls(boolean enabled)
// 是否启动概述模式浏览界面,当页面宽度超过WebView显示宽度时,缩小页面适应WebView。默认false
setLoadWithOverviewMode(boolean overview)
// 设置页面文字缩放百分比,默认100%
setTextZoom(int textZoom)
// 是否支持ViewPort的meta tag属性,如果页面有ViewPort meta tag 指定的宽度,则使用meta tag指定的值,否则默认使用宽屏的视图窗口
setUseWideViewPort(boolean use)
// 指定WebView的页面布局显示形式,调用该方法会引起页面重绘。默认LayoutAlgorithm#NARROW_COLUMNS
setLayoutAlgorithm(LayoutAlgorithm l)
- 存储相关
// 是否保存表单数据,默认false
setSaveFormData(boolean save)
// 是否允许访问WebView内部文件,默认true
setAllowFileAccess(boolean allow)
// 是否允许获取WebView的内容URL ,可以让WebView访问ContentPrivider存储的内容。 默认true
setAllowContentAccess(boolean allow)
// 是否允许Cache,默认false。考虑需要存储缓存,应该为缓存指定存储路径setAppCachePath
setAppCacheEnabled(boolean flag)
// 设置Cache API缓存路径。
setAppCachePath(String appCachePath)
// 是否存储页面DOM结构,默认false。
setDomStorageEnabled(boolean flag)
/**
* 基于WebView导航的类型使用缓存:正常页面加载会加载缓存并按需判断内容是否需要重新验证。
* 如果是页面返回,页面内容不会重新加载,直接从缓存中恢复。setCacheMode允许客户端根据指定的模式来
* 使用缓存。
* LOAD_DEFAULT 默认加载方式
* LOAD_CACHE_ELSE_NETWORK 按网络情况使用缓存
* LOAD_NO_CACHE 不使用缓存
* LOAD_CACHE_ONLY 只使用缓存
*/
setCacheMode(int mode)
- 其他
// 设置页面的编码格式,默认UTF-8
setDefaultTextEncodingName(String encoding)
// 设置WebView代理,默认使用默认值
setUserAgentString(String ua)