setInitialScale – Android
Android手機再套用WebView時會因為手機解析度大小的關係
導致WebView裡的圖片不是太大,就是太小
這時候就要利用WebView裡面的 setInitialScale 的功能
他可以適當的放大,縮小網頁的呈現大小
一般Default值是setInitialScale(100)
setInitialScale(200) ,代表放大一倍,
setInitialScale(50) ,代表縮小一倍,
為了要適配不同尺寸的Android手機,建議大家可以參考一下我下面的程式碼:
如果有針對性的,想適配網頁上的某一張圖,你可以先換算圖片與手機的寬度比
再帶入即可,如我有一張寬度 300dp的圖片,但我在手機上會呈現這樣:
我已經知道我圖片的寬度是300dp了,所以先帶入下面的函式:
//取得手機解析度
private int getScale(){
Display display = ((WindowManager) LoginAct.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
int width = display.getWidth();
Double val = new Double(width)/new Double(300d); //
val = val * 100d;
return val.intValue();
}
再來就是設定我的WebView摟
WebView_1 = (WebView) layoutDemo.findViewById(R.id.open_webview); WebView_1.setPadding(0, 0, 0, 0); WebView_1.setInitialScale(getScale());
結果如下:
有沒有很方便啊 哈哈