Возврат каретки TextView не работает - PullRequest
3 голосов
/ 17 сентября 2011

Я читаю строку из xml-файла, хранящегося на SDCard, в котором есть некоторые возвраты каретки, сохраненные с escape-последовательностью "\ n". Такие как

<string mystring="Line1\nLine2">

Но когда я отображаю текст в эмуляторе, вместо создания новой строки появляется \ n. Я не делаю ничего необычного с текстом - просто читаю его с помощью SAXParser, а затем добавляю в текстовое представление. Есть ли параметр, который мне нужно проверить, чтобы убедиться, что переводы строки отображаются правильно? Нужно ли по-разному хранить возврат каретки в файле xml?

Я также пытался \ r \ n, и это тоже не работает. Когда я отлаживаю, я вижу, что дополнительный \ помещается перед существующим \ Я вижу, что в моем методе SAX startElement строка

String s = atts.getValue("mystring");

назначает "Line1 \ nLine2" для s, поэтому проблема в SAXParser.

Ответы [ 4 ]

4 голосов
/ 09 февраля 2012
&#xA;

очень хорошо работает в середине цитируемого текстового представления.Я хотел бы добавить, что в графическом средстве просмотра Eclipses он добавляет дополнительный пробел (как будто он через два интервала).Однако, когда он скомпилирован и вы запускаете его на эмуляторе или устройстве, у вас есть только возврат каретки.Так что доверьтесь MrGibbage, и вы сэкономите немного времени.

3 голосов
/ 17 сентября 2011

\n на самом деле символ перевода строки, а возврат каретки - \r.Попробуйте использовать оба вместе, например, \r\n.

Подробнее о newline .

Для обработки пробелов с SAX взгляните на ignorableWhitespace(..) метод.

2 голосов
/ 19 сентября 2011

Ну, я разобрался с ответом. Мне пришлось хранить переводы строк в моем XML-файле ampersand-hash-x-A-точка с запятой

&#xA;
1 голос
/ 26 ноября 2012

Используйте &#10; там, где вам нужен возврат Каррайга.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...