XML格式的换行符?

时间:2010-05-20 21:03:50

标签: xml android line break

在XML中编辑String时我需要添加换行符。我想问一下Android编程时的正确形式是什么?因为<br>有效,但ECLIPSE标记该区域有问题。如果我查看建议Eclipse告诉我我将添加一个结束标记</br> - 如果我添加了换行消失...

所以一个有效,但被标记为有问题,另一个有效,但Eclipse告诉我它没问题。

我应该使用什么形式?

5 个答案:

答案 0 :(得分:132)

如果要插入标签页,请使用\n表示换行符和\t

您还可以使用一些XML标记进行基本格式设置:<b>表示粗体文字,<i>表示斜体,<u>表示带下划线的文字。

Android开发者网站上的这篇文章中显示了其他格式选项:
https://developer.android.com/guide/topics/resources/string-resource.html#FormattingAndStyling

答案 1 :(得分:14)

如果您指的是红色字符串,请将CDATA与\ n。

一起使用
<string name="about">
    <![CDATA[
 Author: Sergio Abreu\n
 http://sites.sitesbr.net
  ]]>        
</string>

答案 2 :(得分:4)

您还可以添加&lt; br&gt;而不是\ n。

然后您可以向TexView添加文字:

articleTextView.setText(Html.fromHtml(textForTextView));

答案 3 :(得分:3)

请注意:我看过其他帖子说&#xA;会给你一个段落,这在Android xml String.xml文件中很奇怪,但在测试时不会显示在设备中(根本没有休息时间)。因此,\n显示在两者上。

答案 4 :(得分:2)

以下是我无法访问源字符串时使用的内容,例如:下载HTML:

// replace newlines with <br>
public static String replaceNewlinesWithBreaks(String source) {
    return source != null ? source.replaceAll("(?:\n|\r\n)","<br>") : "";
}

对于XML,您应该编辑它以替换为<br/>

在函数中使用它的示例(为清晰起见,删除了其他调用):

// remove HTML tags but preserve supported HTML text styling (if there is any)
public static CharSequence getStyledTextFromHtml(String source) {
    return android.text.Html.fromHtml(replaceNewlinesWithBreaks(source));
}

......还有一个例子:

textView.setText(getStyledTextFromHtml(someString));