【问题标题】:Restrict zoom in webview app限制 webview 应用中的缩放
【发布时间】:2014-07-19 07:20:04
【问题描述】:

我有一个简单的 Android WebView 应用程序,除了加载一个 URL 并在应用程序中显示它及其链接之外,它几乎没有做任何事情。

通过 CSS,我将网页设置为 720 像素 x 1280 像素,以(理论上)完全填满 Galaxy S3 的屏幕。

在 WebView 的 java 代码中,我尝试使其页面无法放大或缩小,并显示全屏,代码如下:

requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
mWebView.getSettings().setSupportZoom(false);
mWebView.getSettings().setLoadWithOverviewMode(true);
mWebView.getSettings().setUseWideViewPort(true);

我已经使用我构建的 CSS 标尺验证了网页的大小(720 x 1280)是正确的,但是正如您所见,webview 应用在加载时不会以该比例显示它:

我也可以双击屏幕,它确实会放大,即使我认为我在 java 代码中禁用了放大。即使那样,它也不会缩放到 100%……它会放大更多:

所以基本上,我如何操纵 webview 以实际显示我的页面所需的大小,而不允许用户更改该比例?

【问题讨论】:

    标签: android css android-webview


    【解决方案1】:

    您需要在 html 中使用元视口标记来将内容初始缩放到设备大小。您还可以使用此标签禁用缩放。

    在你的 html 文档的头部添加这个:

    <meta name="viewport" content="width=device-width, user-scalable=no">
    

    延伸阅读:MDN - Viewport meta tag

    【讨论】:

    • 谢谢!我认为这有帮助。我还在我的 java 中为 webview 应用程序使用了setInitialScale(100)。不确定两者是否都需要,但它正在工作,所以我不会搞砸它。
    猜你喜欢
    • 1970-01-01
    • 2011-12-24
    • 1970-01-01
    • 1970-01-01
    • 2012-03-05
    • 1970-01-01
    • 2012-05-11
    • 2011-01-12
    • 2011-06-28
    相关资源
    最近更新 更多