【问题标题】:Android WebView overview mode loads image zoomed inAndroid WebView 概览模式加载放大的图像
【发布时间】:2011-09-09 18:52:08
【问题描述】:

我正在使用以下代码在 WebView 中显示图像:

    final WebView web = (WebView) findViewById(R.id.webView);
    web.getSettings().setJavaScriptCanOpenWindowsAutomatically(false);
    web.getSettings().setPluginsEnabled(false);
    web.getSettings().setSupportMultipleWindows(false);
    web.getSettings().setSavePassword(false);
    web.getSettings().setBuiltInZoomControls(true);
    web.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
    web.getSettings().setUseWideViewPort(true);
    web.getSettings().setLoadWithOverviewMode(true);
    String url = extras.getString("url");
    String x = "<html><head><meta name=\"viewport\" content=\"width=device-width\"/><style type=\"text/css\">html, body {margin: 0;padding: 0;} img {border: none;}</style><head><body style=\"background: black;\"><table><tr><td align=\"center\"><img src=\"" + url + "\" /></td></tr></table></body></html>";
    web.loadDataWithBaseURL(null, x, "text/html", "utf-8", null);

根据手册,它应该以概览模式启动,因此应该最大限度地缩小(这就是我想要做的)。不幸的是,图像被放大了。我该如何修复它?

【问题讨论】:

  • 如果您链接到说明这应该有效的手册会有所帮助...

标签: android image webview scale


【解决方案1】:

我认为这里发生的事情是width=device-width 表示视口应该是 480 像素宽(或任何设备)。因此,比这更宽的图像将部分离开屏幕并需要滚动。

如果您希望页面以概览模式打开,我认为您应该在创建 WebView 时进行设置,而不是指定任何viewport

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-29
    • 2015-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多