【问题标题】:Android Webview layouting SINGLE_COLUMNAndroid Webview 布局 SINGLE_COLUMN
【发布时间】:2013-07-20 22:13:30
【问题描述】:

我的 WebView 布局存在很大问题。我正在从 RSS 收集器站点下载内容,包括文章内容。 此内容可能包含图片或 YouTube 视频或其他任何内容。下载不是问题,而是显示它。

图片可能太宽而无法适应屏幕。这不是问题 - 我可以通过将 LayoutAlgorithm 设置为 SINGLE_COLUMN 来解决这个问题。

_webView.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);   

但是,使用 SINGLE_COLUMN 会给 YouTube 视频带来问题。它们在宽度上调整大小,但在高度上没有调整 - 导致 WebView 只显示黑色图片而不是视频。没有办法像这样播放视频。

我也可以通过将 LayoutAlgorithm 设置为 NORMALNARROW_COLUMNS 来解决这个问题 - 但是,这会导致图片无法按照我的意愿调整到屏幕大小,我必须向右/向左滚动为了看到整个画面(效果不是很好,因为我在水平 PageAdapter 中有 WebView)。

我可以假设这可能是 SINGLE_COLUMN 被弃用的原因 (developer.android.com)。然而,NARROW_COLUMNS 并没有达到我的预期。

有人知道如何解决这个问题吗?

【问题讨论】:

    标签: android webview


    【解决方案1】:

    看看我的回答here,问题是 LayoutAlgorithm.SINGLE_COLUMN - 现在已弃用。 问题是您的 html 中的图像具有固定宽度 - 您必须修复它 - 设置 max-width

    【讨论】:

    • 正如我在上面所写的 - 我知道它已被贬低,但这是我知道让 webview 将图像调整到屏幕大小的唯一方法。使用“NARROW_COLUMNS”,按照您的链接 - 我将不得不替换页面内的所有“宽度”/“高度”属性,我仍在试图阻止。但是,我现在找到了解决方案 - 我只是用图像+视频链接替换了 youtube-video 的 iframe,在 youtube-app 中显示视频。
    • 无需使用 NARROW_COLUMNS - 使用 NORMAL,但对 html 进行一些修复 - 最大宽度 - 仅此而已。 stackoverflow.com/a/17801942/2281717
    • 你是对的 - 我没有考虑将它添加为 max-width=100%。我会把你的答案标记为正确的 - 谢谢
    猜你喜欢
    • 2013-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-13
    • 1970-01-01
    相关资源
    最近更新 更多