Ресурс строки новая строка / n не возможно? - PullRequest
152 голосов
/ 28 марта 2011

Не представляется возможным добавить новую строку "/ n" в строку ресурса XML.Есть ли другой способ сделать это?

Спасибо

Ответы [ 7 ]

348 голосов
/ 28 марта 2011

использовать черный слэш, а не прямой."\ n"

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">Hello\nWorld!</string>
</resources>

Кроме того, если вы планируете использовать строку в качестве HTML, вы можете использовать &lt;br /&gt; для разрыва строки (<br />)

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">Hello&lt;br /&gt;World!</string>
</resources>
50 голосов
/ 25 июня 2013

Я знаю, что это довольно старый вопрос, но он занял первое место в списке, когда я искал. Поэтому я хотел обновить другим методом.

В файле strings.xml вы можете сделать \ n или просто нажать enter:

<string name="Your string name" > This is your string.

   This is the second line of your string.\n\n Third line of your string.</string>

Это приведет к следующему на вашем TextView:

Это ваша строка.

Это вторая строка вашей строки.

Третья строка вашей строки.

Это потому, что было два возврата между начальным объявлением строки и новой строкой. Я также добавил \ n к нему для ясности, так как любой из них может быть использован. Мне нравится использовать возврат каретки в xml, чтобы увидеть список или любую многострочную строку, которая у меня есть. Мои два цента.

13 голосов
/ 25 августа 2017

Это старый вопрос, но я обнаружил, что когда вы создаете строку, подобную этой:

<string name="newline_test">My
New line test</string>

Вывод в вашем приложении будет таким (без новой строки)

My New line test

Когда вы ставите строку в кавычки

<string name="newline_test">"My
New line test"</string>

появится новая строка:

My 
New line test

Надеюсь, это кому-нибудь поможет!

2 голосов
/ 21 января 2018

При использовании редактора переводов в Android Studio просто щелкните значок справа (или используйте Shift-Enter), а затем добавьте разрывы строк, используя return. Это позволит правильно вставить \ n в локализованный strings.xml.

2 голосов
/ 15 апреля 2016

Если вы поместите «\ n» в строку в XML-файле, он будет принят как «\\ n»

Итак, я сделал:

text = text.Replace("\\\n", "\n");   ( text is taken from resX file) 

И затем я получаюскачок строки на экране

1 голос
/ 06 апреля 2019

В последней версии Android-студии "\ n" будет напечатано так, как если бы оно было там, если только вся строка не в апострофах

Например:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="title">"Hello\nWorld!"</string>
</resources>
1 голос
/ 26 июля 2017

Очень просто, вы должны просто поместить
\ n туда, где хотите разбить строку в строковом ресурсе.

Например

String s = my string resource have \n line break here;

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