您的位置:首页 > 移动开发

android webview效果的相关属性设置

2015-11-19 11:02 531 查看
前几天一直在做webview的相关显示,不同的属性设置会有不同的效果。经过几天的研究使用,下面是我在使用过程中的一些总结,与大家分享下:

WebSettings websetting = webview.getSettings();   //webview的许多属性都是通过websetting进行设置的

websetting.setJavaScriptEnabled(true);   //可进行JS交互

1、缓存机制的相关设置:

websetting.setDomStorageEnabled(true);   //支持文件存储

websetting.setDatabaseEnabled(true);    //支持数据库存储

String appCacheDir = this.getApplicationContext().getDir("cache", Context.MODE_PRIVATE).getPath();   //缓存存储路径

websetting.setAppCachePath(appCacheDir);   //设置缓存文件的路径

websetting.setAppCacheEnabled(true);   //支持缓存

我们可以在有网的情况下将缓存模式改为websetting.setCacheMode(WebSettings.LOAD_DEFAULT);当没有网络时则设置为

websetting.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);

websetting.setAllowFileAccess(true);  // 可使用文件/

2、webview页面支持放大缩小,则设置如下:

websetting.setSupportZoom(true);

websetting.setBuiltInZoomControls(true);

websetting.setDisplayZoomControls(false);     //放大缩小的图标不显示,true或者不设置则为显示

websetting.setUseWideViewPort(true);      //若要网页根据屏幕显示则需设置此属性

websetting.setLoadWithOverviewMode(true);

3、当加载的页面出错或没有没有网络时,可以重写onReceivedError方法

new WebViewClient{

@Override
public void onReceivedError(WebView view, int errorCode,String description, String failingUrl) {
super.onReceivedError(view, errorCode, description, failingUrl);

//当出现错误信息时,该处内容为点击页面会有的响应

      }

}

4、位webview设置cookie

我们可以自定义方法,然后将下面代码放入其中,

String cookie = "";

CookieSyncManager.createInstance(context);

CookieManager cookieManager = CookieManager.getInstance();

cookieManager.setAcceptCookie(true);

cookieManager.setCookie(url, cookie);

CookieSyncManager.getInstance().sync();

完成后,可以将该方法这只在onPageStart方法中。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息