Вот что я использую, когда у меня нет доступа к исходной строке, например, для загруженного 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));