web_view = (WebView) findViewById(R.id.web_view);
//设置WebView的一些缩放功能点
web_view.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
web_view.setHorizontalScrollBarEnabled(false);
web_view.getSettings().setSupportZoom(true);
// web_view.getSettings().setTextSize(WebSettings.TextSize.SMALLEST);
//设置WebView可触摸放大缩小
web_view.getSettings().setBuiltInZoomControls(true);
web_view.setInitialScale(70);
web_view.setHorizontalScrollbarOverlay(true);
//WebView双击变大,再双击后变小,当手动放大后,双击可以恢复到原始大小
web_view.getSettings().setUseWideViewPort(true);
//提高渲染的优先级
// web_view.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
//把图片加载放在最后来加载渲染
//webView.getSettings().setBlockNetworkImage(true);
//用WebView将字符串以HTML的形式显示出来
//webView.loadDataWithBaseURL("fake://not/needed", <p>zzz</p>, "text/html", "utf-8", "");
//在同种分辨率的情况下,屏幕密度不一样的情况下,自动适配页面:
DisplayMetrics dm = getResources().getDisplayMetrics();
// 获取当前界面的高度
//int width = dm.widthPixels;
//int height = dm.heightPixels;
int scale = dm.densityDpi;
if (scale == 240) {
web_view.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
} else if (scale == 160) {
web_view.getSettings().setDefaultZoom(WebSettings.ZoomDensity.MEDIUM);
} else {
web_view.getSettings().setDefaultZoom(WebSettings.ZoomDensity.CLOSE);
}
//按键监听
web_view.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN) {
if (keyCode == KeyEvent.KEYCODE_BACK && wv.canGoBack()) { //表示按返回键
wv.goBack(); //后退
//webview.goForward();//前进
return true; //已处理
}
}
return false;
}
});
web_view.loadUrl(webviewJson);
web_view.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// webview自己加载URL,然后通知系统不需要HandleURL
view.loadUrl(url);
return true;
}
});
}
});
}
//设置WebView的一些缩放功能点
web_view.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
web_view.setHorizontalScrollBarEnabled(false);
web_view.getSettings().setSupportZoom(true);
// web_view.getSettings().setTextSize(WebSettings.TextSize.SMALLEST);
//设置WebView可触摸放大缩小
web_view.getSettings().setBuiltInZoomControls(true);
web_view.setInitialScale(70);
web_view.setHorizontalScrollbarOverlay(true);
//WebView双击变大,再双击后变小,当手动放大后,双击可以恢复到原始大小
web_view.getSettings().setUseWideViewPort(true);
//提高渲染的优先级
// web_view.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
//把图片加载放在最后来加载渲染
//webView.getSettings().setBlockNetworkImage(true);
//用WebView将字符串以HTML的形式显示出来
//webView.loadDataWithBaseURL("fake://not/needed", <p>zzz</p>, "text/html", "utf-8", "");
//在同种分辨率的情况下,屏幕密度不一样的情况下,自动适配页面:
DisplayMetrics dm = getResources().getDisplayMetrics();
// 获取当前界面的高度
//int width = dm.widthPixels;
//int height = dm.heightPixels;
int scale = dm.densityDpi;
if (scale == 240) {
web_view.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
} else if (scale == 160) {
web_view.getSettings().setDefaultZoom(WebSettings.ZoomDensity.MEDIUM);
} else {
web_view.getSettings().setDefaultZoom(WebSettings.ZoomDensity.CLOSE);
}
//按键监听
web_view.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN) {
if (keyCode == KeyEvent.KEYCODE_BACK && wv.canGoBack()) { //表示按返回键
wv.goBack(); //后退
//webview.goForward();//前进
return true; //已处理
}
}
return false;
}
});
web_view.loadUrl(webviewJson);
web_view.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// webview自己加载URL,然后通知系统不需要HandleURL
view.loadUrl(url);
return true;
}
});
}
});
}