Html.fromHtml忽视\n符号问题

今天在做自己的activity的时候,发现了一个问题,因为需要在TextView里嵌入超链接,所以需要使用Html.fromHtml这个方法,代码很简单,如下所示:

                 String message = temp.hostContents.get(i).getContent();
                 Spanned str = Html.fromHtml(message);
                 textView.setText(str);

这样我们的TextView就可以自动解析超链接,并且在TextView中直接呈现出来。但是,我很快发现了一个问题,就是我们的TextView中的换行消失了,而我明明在message这个字符串中包含了\n这个字符。后来通过打印发现,经过Html.fromHtml处理之后,\n符号被忽视了。我的解决方法是,用<br/ >替换\n,然后再用Html.fromHtml处理。如下所示:

                 String message = temp.hostContents.get(i).getContent();
                 Spanned str = Html.fromHtml(message.replace("\n","<br />"));
                 textView.setText(str);

这样我们的TextView就可以换行了,同理,如果存在其他的字符也在Html.fromHtml转换的过程中被忽视了,我们也可以通过这个方式去试试替换~

猜你喜欢

转载自blog.csdn.net/y505772146/article/details/50165509