Android手機再套用WebView時會因為手機解析度大小的關係

導致WebView裡的圖片不是太大,就是太小

這時候就要利用WebView裡面的setInitialScale的功能

他可以適當的放大,縮小網頁的呈現大小

一般Default值是setInitialScale(100)

setInitialScale(200) ,代表放大一倍,

setInitialScale(50) ,代表縮小一倍,

為了要適配不同尺寸的Android手機,建議大家可以參考一下我下面的程式碼:

如果有針對性的,想適配網頁上的某一張圖,你可以先換算圖片與手機的寬度比

再帶入即可,如我有一張寬度 300dp的圖片,但我在手機上會呈現這樣:

2

我已經知道我圖片的寬度是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摟

結果如下:

 

1

有沒有很方便啊  哈哈

參考來源

Categories: AndroidCoding

0 thoughts on “[Android] webview.setInitialScale的完美適配”

發表迴響

你的電子郵件位址並不會被公開。

Related Posts

Coding

User Agent的基本介紹

介紹一下User Agent的含義,以及User Agent各部分的意 Read more...

Android

[Android]String與int互轉

在這邊跟大家分享Android環境下,字串 String 轉換成 in Read more...

Android

[Android] jar檔包裝的小技巧

相信在座各位的高級工程師 在一個專案裡code一個比一個多的時候 會發 Read more...