如何在Android文本视图中使用HTML新行功能?

ydn*_*nas 18 html android string-formatting

我在我的Android应用程序中使用webservice.在我的webservice结果中,我获得了一个HTML格式的String作为结果.

假设这是我的Web服务结果:

关于钦奈的书籍:\n

  • 马德拉斯发现,旧马德拉斯和新马德拉斯的故事,马德拉斯(1992年)由S. Muthiah
  • \n
  • 马德拉斯 - 过去和现在(1995年)由S. Muthiah撰写
  • \n
  • 马德拉斯 - 它的昨天和今天以及 S. Muthiah的明天
  • \n
  • 在马德拉斯的家中(1989年),作者是S. Muthiah
  • \n
  • S.Muthiah的Chepauk精神(1998)
  • \n
  • 圣乔治堡(1945年)的故事由Col. DM Reid撰写
  • \n 小说在钦奈 \n
  • SY Krishnaswamy的Kalyani的丈夫
  • \n
  • 在Chennai追逐彩虹(http://chasingrainbowsinchennai.blogspot.com/ \">在Chennai追逐彩虹),(2003)作者:Colin Todhunter
  • \n
  • 在老马德拉斯(1914年)由比西亚玛丽克罗克
  • \n

我使用Html.fromHtml(String)将其添加到我的TextView.但我没有获得新的线路功能.我将其显示为段落.

关于金奈的书籍:发现的马德拉斯,马德拉斯的旧故事,马德拉斯的故事(1992年),作者:S. Muthiah马德拉斯 - 过去和现在(1995年)作者:S. Muthiah马德拉斯 - 其昨天和今天以及明天的S.Muthiah在家中的明天在马德拉斯(1989年)由S. Muthiah撰写的The Chepauk(1998)由S. Muthiah撰写圣乔治堡的故事(1945年)由Col. DM ReidFiction创作于Chennai Kalyani的丈夫由SY Krishnaswamy在金奈追逐彩虹(Chasing Rainbows) in Chennai),(2003)by Colin Todhunter In Old Madras(1914)by Bithia Mary Crocker

如何以易读且易懂的方式呈现此数据?

Jor*_*sys 66

String sBooks = "Books on Chennai:\n ....";
Run Code Online (Sandbox Code Playgroud)

替换:\n<br>:

sBooks = sBooks.replace("\n", "<br>");
Run Code Online (Sandbox Code Playgroud)

使用TextView的示例:

myTextView.setText(Html.fromHtml(sBooks));
Run Code Online (Sandbox Code Playgroud)

  • 有趣的是,&lt;br/&gt;`是我尝试的第一件事,但是没有用。我猜fromHTML确实不喜欢自动关闭标签。 (2认同)
  • 另一种方法是使用官方文档并把**&lt;**。例如:`&lt;string name="message"&gt;电子邮件是:&lt;b&gt;%1$s&lt;/b&gt;&lt;br/&gt;昵称是:&lt;b&gt;%2$s&lt;/b&gt;&lt;/string&gt; ` 更多信息请访问:[Android 字符串资源](https://developer.android.com/guide/topics/resources/string-resource.html) (2认同)

The*_*ist 6

只需替换\n<br/>标签,然后将整个字符串传递给Html.fromHtml(String). 这样它将以正确的格式显示。