在某些大分辨率下,我們用WebView加載的網頁可能會出現被放大的現象,這顯然不是我們想要的結果,我開始看WebSettings這個是否可以設置不縮放,webSettings.setBuiltInZoomControls(false),我發現這樣設置后沒有任何效果,沒辦法只得繼續看代碼。后來看到有個這樣的屬性:WebSettings.ZoomDensity
才最終解決這個問題(網址如下:http://www.Android-doc.com/reference/android/webkit/WebSettings.ZoomDensity.html)
下面直接貼關鍵部分的代碼吧。
int screenDensity = getResources().getDisplayMetrics().densityDpi; Logger.d(TAG, "screenDensity = " + screenDensity); WebSettings.ZoomDensity zoomDensity = WebSettings.ZoomDensity.MEDIUM; switch (screenDensity) { case DisplayMetrics.DENSITY_LOW: zoomDensity = WebSettings.ZoomDensity.CLOSE; break; case DisplayMetrics.DENSITY_MEDIUM: zoomDensity = WebSettings.ZoomDensity.MEDIUM; break; case DisplayMetrics.DENSITY_HIGH: case DisplayMetrics.DENSITY_XHIGH: case DisplayMetrics.DENSITY_XXHIGH: default: zoomDensity = WebSettings.ZoomDensity.FAR; break; } webSettings.setDefaultZoom(zoomDensity); 新聞熱點
疑難解答