限制webview縮放和隱藏zoombar(2.3)

java代碼:

webView = (WebView) this.findViewById(R.id.webView);
WebSettings settings = webView.getSettings();
settings.setJavaScriptEnabled(true);
settings.setSupportZoom(true);// 支持縮放
settings.setBuiltInZoomControls(true);// 設置支持縮放
settings.setNeedInitialFocus(true);// 當webview調用requestFocus時爲webview設置節點
settings.setUseWideViewPort(true);// 設置圖片調整到適合webview大小
settings.setLayoutAlgorithm(LayoutAlgorithm.NORMAL);
settings.setLoadWithOverviewMode(true);
settings.setUseWideViewPort(true);
setZoomControlGone(webView);
// webView.setInitialScale(60);//初始大小狀態
webView.setHorizontalScrollBarEnabled(false);// 設置是否顯示水平滾動條
webView.setVerticalScrollBarEnabled(false);// 設置是否顯示垂直滾動條
webView.addJavascriptInterface(new JSInterface(), "scenery");
webView.loadUrl("file:///android_asset/index.html");

/** 設置隱藏縮放按鈕  4.0之後使其失效,暫時沒有找到在4.0以上隱藏zoombar的解決辦法 */
public void setZoomControlGone(View view) {
Class classType;
Field field;
try {
classType = WebView.class;
field = classType.getDeclaredField("mZoomButtonsController");
field.setAccessible(true);
ZoomButtonsController mZoomButtonsController = new ZoomButtonsController(
view);
mZoomButtonsController.getZoomControls().setVisibility(View.GONE);
try {
field.set(view, mZoomButtonsController);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
} catch (SecurityException e) {
e.printStackTrace();
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
}



html代碼:


<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" name="viewport" content="width=device-width,initial-scale=0.4, minimum-scale = 0.4 ,
          maximum-scale = 1.0 , user-scalable=yes" />
<title>標題</title>
<link rel="stylesheet" type="text/css" href="style.css" />

</head>
<script type="text/javascript" src="js/jquery-1.6.js"></script>
<body>.......</body>



content="width=device-width,initial-scale=0.4, minimum-scale = 0.4 ,
          maximum-scale = 1.0 , user-scalable=yes"
width=device-width//html界面的寬度是Android設備屏幕的寬度
initial-scale=0.4//html界面的初始大小  是原圖的xx倍
minimum-scale = 0.4//html界面的最小值  是原圖的xx倍
maximum-scale = 1.0 //html界面的最大值  是原圖的xx倍
user-scalable=yes//是否支持縮放


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章