如何在 WebView 中启用缩放控件和捏缩?

Android 的默认浏览器应用程序在你滚动时显示缩放控件,并允许捏缩放。如何为我自己的 Webview 启用这个特性?

我试过了:

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

但是这两个特性都没有被启用。顺便说一下,我已经设置了一个 WebChromeClient和一个 WebViewClient的网络视图,如果这有什么不同。

谢谢!

121579 次浏览

奇怪,在 OnCreate 方法中,我正在使用

webView.getSettings().setBuiltInZoomControls(true);

而且在这里工作得很好。 你的视频里有什么特别的吗?

检查你是否有 ScrollView 包装 Webview

对我来说,这就是问题所在。似乎 ScrollView 妨碍了捏手势。

修好它,只要 将您的 Webview 放在 ScrollView 之外

使用这些:

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

试试这个代码,我能正常工作。

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

在 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);

若要在 WebView 中启用缩放控件,请添加以下代码行:

webView.getSettings().setBuiltInZoomControls(true);

通过这行代码,您可以在 WebView 中启用缩放功能,如果您想删除所提供的缩放按钮,请添加以下代码行:

webView.getSettings().setDisplayZoomControls(false);