web-dev-qa-db-ja.com

WebViewでズームコントロールとピンチズームを有効にする方法

Androidのデフォルトのブラウザアプリは、スクロール中にズームコントロールを表示し、ピンチズームも可能にします。自分のWebviewでこの機能を有効にするにはどうすればよいですか?

私はもう試した:

webSettings.setBuiltInZoomControls(true);
webSettings.setSupportZoom(true);

ただし、結果としてどちらの機能も有効になりません。ところで、Webviewに違いが出る場合は、WebChromeClientWebViewClientを設定しました。

ありがとう!

115
Robert Bana

奇妙な。 OnCreateメソッド内で、私は使用しています

webView.getSettings().setBuiltInZoomControls(true);

そして、ここでうまく機能しています。あなたのウェブビューに特別なことはありますか?

261
zov

これらを使用してください:

webview.getSettings().setBuiltInZoomControls(true);
webview.getSettings().setDisplayZoomControls(false);
80
Dario Bruzzese

WebViewをラップするScrollViewがないかどうかを確認します。

私の場合、それが問題でした。 ScrollViewがピンチジェスチャの邪魔になるようです。

修正するには、WebViewをScrollViewの外に持っていくだけです。

33
Tiago

OnCreate内に、次を追加します。

 webview.getSettings().setSupportZoom(true);
 webview.getSettings().setBuiltInZoomControls(true);
 webview.getSettings().setDisplayZoomControls(false);

Htmlドキュメント内に、次を追加します。

<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=2, user-scalable=yes">
</head>
</html>

Javascript内では、以下を省略します。

//event.preventDefault ? event.preventDefault() : (event.returnValue = false);
2
Jarir

このコードを試してください、私はうまく動作します。

 webSettings.setSupportZoom(true);
 webSettings.setBuiltInZoomControls(true);
 webSettings.setDisplayZoomControls(false);
1
Muhammed Haris

WebViewでズームコントロールを有効にするには、次の行を追加します。

webView.getSettings().setBuiltInZoomControls(true);

このコード行を使用すると、WebViewでズームが有効になります。提供されたズームインボタンとズームアウトボタンを削除する場合は、次のコード行を追加します。

webView.getSettings().setDisplayZoomControls(false);
0
Anubhav