为Webview设置缩放

Far*_*ari 32 android

我有一个WebView和2个URL来打开它.我想要做的是,当我为第一个网址设置缩放级别,然后我转到第二个网址时,它也应该具有相同的缩放级别.现在,缩放级别将重置为两者.

谢谢,法哈

Sam*_*uel 42

这将适用于我认为的这种情况

mWebView.setInitialScale(ZOOM_LEVEL);
Run Code Online (Sandbox Code Playgroud)

例如,ZOOM_LEVEL可以是25 25%150 150%


Pra*_*een 35

使用webSettings

webview.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
Run Code Online (Sandbox Code Playgroud)

请注意,尽管webSettings是因为API等级1可用,WebSettings.ZoomDensity是因为API级别7.非常适用于所有设备分辨率可用.

另外,为了在webView上启用缩放,请添加以下代码:

webView.getSettings().setBuiltInZoomControls(true);
Run Code Online (Sandbox Code Playgroud)

  • 现在似乎已经弃用了. (4认同)

Kin*_*ses 20

不推荐使用setDefaultZoom.

webview.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
Run Code Online (Sandbox Code Playgroud)

所以,而不是你可以使用如下,

webview.setInitialScale(1);
webview.getSettings().setLoadWithOverviewMode(true); 
webview.getSettings().setUseWideViewPort(true);
Run Code Online (Sandbox Code Playgroud)

这有助于您删除

setDefaultZoom(WebSettings.ZoomDensity.FAR).
Run Code Online (Sandbox Code Playgroud)

  • 这应该是最新的公认答案 (2认同)

Joh*_*ner 13

在离开第一页之前,请使用

int scale = 100 * webView.getScale();
Run Code Online (Sandbox Code Playgroud)

然后在加载第二页后,使用

webView.setInitialScale( scale );
Run Code Online (Sandbox Code Playgroud)