android -Webview 显示纯文本而不是 html

android -Webview shows plain text instead of html

这是我的示例 html 代码,假设转换为 html,我已经在几个应用程序上测试了这段代码,它工作正常。这是代码:

WebSettings settings = des.getSettings();
            settings.setDefaultTextEncodingName("utf-8");
            settings.setCacheMode(WebSettings.LOAD_NO_CACHE);
            settings.setSaveFormData(false);
            settings.setSupportZoom(false);
            int fontsize=15;
            if(fontsize>20)fontsize=13;
            settings.setDefaultFontSize(fontsize);
            settings.setBuiltInZoomControls(false);
            des.loadData(
                    "<html><head><style>@font-face { font-family: myface;src: url(\"file:///android_asset/yekan.ttf\");" +
                            "BODY, HTML {background: transparent;  } body,div {  font-family: myface;} </style></head><body><div style='text-align: justify; line-height: 23px;float:right' dir='rtl'>"
                            + dataC.get(0).get("tozih").replace("&quot;","'") + "</div></body></html>",
                    "text/html; charset=utf-8", "UTF-8");

html 是这样的:

<p>ok</p>

当我 运行 应用程序时,WebView 准确地显示了上面的行,它没有显示为 html。

这是为什么?我应该怎么做才能解决这个问题?

谢谢

您是否尝试记录 dataC.get(0).get("tozih") 的内容以查看它是否真的如您所料?例如转义码中的 < 等是什么?

也许你应该在 dataC.get(0).get("tozih")

上尝试 .replace("&quot;","'").replace("&lt;","<").replace("&gt;",">")