![](/img/trans.png)
[英]Android wrapping text with FlowTextView is overwriting TextView
[英]HTML View in Android FlowTextView
我已经从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
这是我的Android代码
Spanned html = Html.fromHtml(content); flowTextView.setText(html);
请帮助我摆脱这一阶段。
您可以使用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;
}
}
}
}
}
FlowTextView库具有缺点。 无需执行Html.fromHtml-该库会为您执行此操作。 视图本身是RelativeLayout,它们使用onDraw方法将您的文本放在此处。 这就是为什么文本看起来不好,链接不可单击以及其他问题的原因。
我建议移至标准TextView并使用Spans创建所需的所有内容。 您的链接将是可单击的,项目符号,文本样式等都有特殊的跨度。 这是用于文本样式的本地android机制。 这可能有用http://flavienlaurent.com/blog/2014/01/31/spans/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.