代码之家  ›  专栏  ›  技术社区  ›  Zephyr

如何使WebView中的文本换行?

  •  1
  • Zephyr  · 技术社区  · 6 年前

    我的应用程序使用一个 webview 来显示在程序使用期间即时生成的动态HTML。

    我试图确保HTML的内容都显示在WebView中,而不需要水平滚动(垂直滚动也可以)。我找到了许多关于如何使WebView与内容成比例的指南,但没有找到相反的方法。

    下面是用于生成HTML的代码:

    html
    .append(“<head><style>\n”)
    .append(“body \n”)
    .append(“字体大小:”)。
    .append(“字体系列:”).append(settings.getfontname()).append(“;\n”)
    .append(“\n”)
    .append(“</style></head><body>\n”);
    

    然后,在正文中,我加载了一些我不能在这里发布的专有文本。文本通常会延伸到webview的右侧。

    *我很抱歉弄混了;专有信息

    无法增加WebView大小以进行补偿。如何正确设置样式以允许文本换行?

    我已经尝试将widthofbodyto 100%andword wrapto“normal.”

    谢谢。

    编辑 我的问题与引导无关。如果只需将webengine的内容安装到webview中就不需要引导了;还有其他的解决方法吗?

    下面是用于生成HTML的代码:

    html
                    .append("<head><style>\n")
                    .append("   body {\n")
                    .append("       font-size: ").append(Settings.getFontSize()).append("px;\n")
                    .append("       font-family: ").append(Settings.getFontName()).append(";\n")
                    .append("   }\n")
                    .append("</style></head><body>\n");
    

    然后,在正文中,我加载了一些我不能在这里发布的专有文本。文本通常会扩展到Web视图以下内容:

    enter image description here *我很抱歉弄混了;专有信息

    无法增加WebView大小以进行补偿。如何正确设置样式以允许文本换行?

    我已经试过设置width属于body100%和word-wrap到“正常”。

    谢谢您。

    编辑 我的问题与引导无关。如果只需要引导程序来安装WebEngine进入Web视图

    1 回复  |  直到 6 年前
        1
  •  0
  •   Zephyr    6 年前

    我找到了简单的解决方案。 WebView 默认情况下已经具有此功能。问题出在生成的HTML上;我正在将有问题的文本包装在 <pre> 标签,强制将其呈现为一行连续的文本。

    仍然存在1或2个字符溢出并导致水平滚动的问题,但是我应该能够用一些CSS填充来解决这个问题。