【问题标题】:Loading image in WebView在 WebView 中加载图像
【发布时间】:2023-03-06 13:40:01
【问题描述】:

我的 XML 文件中有这个 html 标记

<text><![CDATA[<p><div style="text-align:justify">A certain compound has the molecular formula <img width="40" height="17" align="bottom" alt="mc001-2.jpg" src="@@PLUGINFILE@@/mc001-2.jpg" border="0"> If 10.0 g of the compound contains 5.62 g of X, the atomic mass of X is</div></p>]]></text>

和 src 属性包含文件名,如果在我的 XML 文件中的另一个文件标记中,则在下面给出..

<file name="mc001-2.jpg" encoding="base64"> /9j/4AAQSkZJRgABAAEAIwAUAAD//gAfTEVBRCBUZWNobm9sb2dpZXMgSW5jLiBWMS4wMQD/2wCE
AAICAgICAgICAgICAgICAgICAgICAgICAgICAwMDAwMDAwMDBA UEAwQFBAMDBAYEBQUFBgYGAwQG
BwYGBwUGBgUBAgICAgICAgICAgUDAwMFBQUFBQUFBQUFBQUFBQ UFBQUFBQUFBQUFBQUFBQUFBQUF
BQUFBQUFBQUFBQUFBQUFBf/EAaIAAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKCwEAAwEBA QEB
AQEBAQAAAAAAAAECAwQFBgcICQoLEAACAQMDAgQDBQUEBAAAAX 0BAgMABBEFEiExQQYTUWEHInEU
MoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OT pDREVGR0hJSlNUVVZXWFlaY2Rl
ZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqK mqsrO0tba3uLm6wsPExcbHyMnK
0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+foRAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYS
QVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJi coKSo1Njc4OTpDREVGR0hJSlNU
VVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5 iZmqKjpKWmp6ipqrKztLW2t7i5
usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/AABEIABAACwMBEQACEQEDEQH/
2gAMAwEAAhEDEQA/AP2M8S/Gm08Ba5f+HfG2g39nqWo3Gz4YQ6Jv1hvig7ou3SdMBSIQa1E+8 z2M
zKiWym9E7W8V09pNH2lem6VCnz4yDlzUbqP7vmfLXU3p9XjHlV eo0nh6l4zjy1MPOvcoxpTVSrNU
8I1H987tQnyrmpTjFOXtJSv9XhFSeIi1GnerGpTh6x4fn1u60X TbnxHp1lpGuT2sc2p6Xp2oPqtn
p1y/zG3jvHhhNzsBCmTy0DMGIGME7VIwhPkp1OdRSXNZpOVlzOKeqj zX5ea0uW3Mk7pYwlKScnTc
LuXLFtcyjzPk5+VuKnycvOoylFTuoylFKT801v4LeHvF+ra9rf ji7vPEmp3gW18KXCltKf4cadE8
M8B8NvA5ew1H7TBFdy6srfaJZIoVysMMUKYU4zoU1KjVdPFc7m 68bc+jkqcIqSlFUYwk4TotSp1+
ao66qRnyR2qTVVxp1KalhoxS9i78km4pTqVGmnKo5X9nNOMsPD lVDkqe0q1fTdBstS03RtNsNY1h
9f1OytIra81uWyt9On1SWMbftMtvb/uYpXADOIwqFixVEUhF3qzjUm5xpKne14xvyp2XNyqTlJR5
ruMXKTjG0XKTXM8KUHSh7N1HNRbs5W5uW75VJpJSko2UpKMVJp y5Y35V/9k=
</file>

在解析 CDATA 类型节点之间的 xml 文件后,我得到了文本或说字符串,但是当我在 WebView 中加载它时,它会为

<img width="40" height="17" align="bottom" alt="mc001-2.jpg" src="@@PLUGINFILE@@/mc001-2.jpg" border="0"> 

我的问题是如何使用其 src 属性在 webView 中加载上面的图像标记????????? 我也对 src 属性中给出的路径有点困惑。

截图是这样的

任何帮助将不胜感激。提前致谢

【问题讨论】:

  • 您将图像存储在哪里?它们是在服务器上还是与您的 apk 捆绑在一起?
  • @dymmeh 感谢即时回复实际上图像不在服务器上,我需要转换我的 XML 文件中文件标记中给出的图像的基本代码并显示在空框中。如屏幕截图所示。查看 标签下的 标签。其源属性包含与文件标签中给出的相同文件名

标签: android html xml webview


【解决方案1】:

这看起来像一个表示图像的 Base64 编码字符串。

要在 WebView 中加载此类图像,请查看此帖子。

Embedding Base64 Images

【讨论】:

  • 感谢您的回复,我想在 WebView 中加载。我用于加载字符串的代码是 webView.loadDataWithBaseURL(null, employees.get(i).toString(), "text/html","UTF-8", null);
  • 是的,它对我有用,但在 img 标签下,我的 src 属性看起来像这样 src="@@PLUGINFILE@@/mc001-2.jpg" 所以它的制作一个空盒子。那我怎么能像你一样以编程方式更改我的 src 属性谢谢
  • 可以通过Javascript代码设置img标签上的src值。你需要在你的 HTML 页面上运行一个 JS sn-p,然后从你的 Activity 代码中调用它,然后传递它。你有这个视图的 HTML 页面吗?
  • 不,实际上我使用 DOM 解析器解析 xml 文件并从 标记(实际上是 html 代码)获取内容,然后在 WebView 中加载内容。
  • 在这种情况下,你肯定需要一些 JS 操作来实现这一点。
【解决方案2】:

我已经解决了我的问题,我已经替换了我的 src 属性

src="@@PLUGINFILE@@/mc001-2.jpg" by this 

src='data:image/png;base64,<!- Base64 code for image -->' 

轻松解析

它对我有用,感谢您的回复。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-05
    • 2014-06-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多