Android:Html.fromHtml()处理非标准的html标签

时间:2010-12-23 15:27:43

标签: android html-parsing

我正在解析一条可能包含用户定义标签的html消息,例如<usertag uservalue="value" />

我使用标准的Html.fromHtml()函数来解析html源代码。不幸的是,它只是忽略非标准标签并从输出中删除它们。我想保留它们。

我试图将自己的TagHandler提供给fromHtml()函数,但我不知道在handleTag()函数中要做什么。看起来我无法访问TagHandler.handleTag()函数中的非标准标记属性\ content?如何使用从Html()传入的xmlReader?

由于

2 个答案:

答案 0 :(得分:0)

从我们在javadoc中看到的内容,似乎有4个参数:

  • 打开,指定这是一个开始或结束标签
  • 标签,大概是标签名称
  • 输出,即生成的可编辑数据,您将添加数据
  • xmlReader,当前的XML阅读器。

但看起来你不能使用这些属性。

最后一个解决方案虽然有点复杂,但可以重新实现Html以满足您的需求。您可以找到其来源here

答案 1 :(得分:0)

  

我正在解析一条可能包含用户定义标签的html消息,例如<usertag uservalue="value" />

然后你没有HTML。

以下是一些选项:

  1. 彻底摆脱“用户定义的标签”
  2. 让您的源标记为有效的HTML,并将“用户定义的标记”转换为有效的HTML(例如,使用<div><span>具有class属性,作为微格式的人做)
  3. 预先处理您的标记以处理您的“用户定义的代码”,将其转换为有效的HTML,然后再致电Html.fromHtml()