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

Rob*_*ana 119 android webview

Android的默认浏览器应用程序在您滚动时显示缩放控件,并允许缩放缩放.如何为自己的Webview启用此功能?

我试过了:

webSettings.setBuiltInZoomControls(true);
webSettings.setSupportZoom(true);
Run Code Online (Sandbox Code Playgroud)

但是这两个功能都没有得到启用.顺便说一句WebChromeClient,WebViewClient如果有所作为,我会为Webview 设置一个和一个.

谢谢!

zov*_*zov 268

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

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

它在这里运作良好.您的网页浏览中有什么特别之处吗?

  • ^`webView.getSettings().setDisplayZoomControls(false);` (42认同)
  • 虽然这将允许双指缩放,但它还将显示缩放覆盖控件(Galaxy S3).要禁用屏幕缩放工具,但保留双指缩放功能,您还需要调用webView.setDisplayZoomControls(false). (41认同)

Dar*_*rux 83

使用这些:

webview.getSettings().setBuiltInZoomControls(true);
webview.getSettings().setDisplayZoomControls(false);
Run Code Online (Sandbox Code Playgroud)


Tia*_*ago 33

检查您是否没有包装WebviewScrollView.

在我的情况下,这是问题.似乎ScrollView妨碍了捏手势.

要修复它,只需将您的Webview放在ScrollView之外.

  • 你救了我的一天 (6认同)

Jar*_*rir 7

在 OnCreate 中,添加:

 webview.getSettings().setSupportZoom(true);
 webview.getSettings().setBuiltInZoomControls(true);
 webview.getSettings().setDisplayZoomControls(false);
Run Code Online (Sandbox Code Playgroud)

在 html 文档中,添加:

<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=2, user-scalable=yes">
</head>
</html>
Run Code Online (Sandbox Code Playgroud)

在 javascript 中,省略:

//event.preventDefault ? event.preventDefault() : (event.returnValue = false);
Run Code Online (Sandbox Code Playgroud)


Muh*_*ris 5

试试这个代码,我工作得很好。

 webSettings.setSupportZoom(true);
 webSettings.setBuiltInZoomControls(true);
 webSettings.setDisplayZoomControls(false);
Run Code Online (Sandbox Code Playgroud)


Anu*_*hav 5

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

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

使用这行代码,您可以在 WebView 中启用缩放,如果要删除提供的放大和缩小按钮,请添加以下代码行:

webView.getSettings().setDisplayZoomControls(false);
Run Code Online (Sandbox Code Playgroud)