我使用了来自https://github.com/的FlowTextView库。 但我的问题是当我从HTML显示内容时,它无法正常显示。
<html>
<body>
<h2>Unordered List with Default Bullets</h2>
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
</body>
</html>
以上标签是我的输入,我必须在下面输出
包含默认项目符号的无序列表
但我得到了。
包含默认项目符号的无序列表 CoffeeTeaMilk
这是我的安卓代码
跨越html = Html.fromHtml(内容); flowTextView.setText(HTML);
请帮助我摆脱这个阶段。答案 0 :(得分:1)
您可以使用 TagHandler
执行此操作myTextView.setText(Html.fromHtml("<html><body><ul><li>....</li></ul></body></html>", null, new MyTagHandler()));
在 MyTagHandler 类下方使用以供参考.....您可以根据需要自定义它。
public class MyTagHandler implements TagHandler{
boolean first= true;
String parent=null;
int index=1;
@Override
public void handleTag(boolean opening, String tag, Editable output,
XMLReader xmlReader) {
if(tag.equals("ul")) parent="ul";
else if(tag.equals("ol")) parent="ol";
if(tag.equals("li")){
if(parent.equals("ul")){
if(first){
output.append("\n\t•");
first= false;
}else{
first = true;
}
}
else{
if(first){
output.append("\n\t"+index+". ");
first= false;
index++;
}else{
first = true;
}
}
}
}
}
答案 1 :(得分:0)
FlowTextView库有缺点。没有必要做Html.fromHtml - 库为你做这个。视图本身是RelativeLayout,它们使用onDraw方法将文本放在那里。这就是为什么文本看起来不好,链接不可点击和其他问题。
我建议使用标准TextView并使用Spans创建您想要的所有内容。您的链接是可点击的,有子弹的特殊跨度,文本样式等。这是用于文本样式的本机android机制。这可能很有用http://flavienlaurent.com/blog/2014/01/31/spans/