Wydaje się, że nie jest możliwe dodanie nowej linii /n
do ciągu zasobów XML. Czy jest na to inny sposób?
Wydaje się, że nie jest możliwe dodanie nowej linii /n
do ciągu zasobów XML. Czy jest na to inny sposób?
Odpowiedzi:
użyj czarnego ukośnika, a nie ukośnika do przodu. \n
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="title">Hello\nWorld!</string>
</resources>
Ponadto, jeśli planujesz używać ciągu jako HTML, możesz użyć <br />
do podziału wiersza ( <br />
)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="title">Hello<br />World!</string>
</resources>
Wiem, że to dość stare pytanie, ale znalazło się na szczycie listy, kiedy szukałem. Więc chciałem zaktualizować inną metodą.
W pliku strings.xml możesz wykonać \ n lub po prostu nacisnąć 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>
Spowoduje to, że w Twoim TextView:
To jest twój sznurek.
To jest druga linia twojego ciągu.
Trzecia linia twojego ciągu.
Dzieje się tak, ponieważ między początkową deklaracją ciągu a nową linią wystąpiły dwa powroty. Dla jasności dodałem także \ n, ponieważ można użyć obu. Lubię używać powrotu karetki w xml, aby móc zobaczyć listę lub dowolny ciąg wielowierszowy, który mam. Moje dwa centy.
To jest stare pytanie, ale odkryłem, że kiedy tworzysz taki ciąg:
<string name="newline_test">My
New line test</string>
Wynik w Twojej aplikacji będzie taki (bez nowej linii)
My New line test
Kiedy umieścisz ciąg w cudzysłowie
<string name="newline_test">"My
New line test"</string>
pojawi się nowa linia:
My
New line test
Html.fromHtml
. Dzięki
\n
wszędzie (co może szybko stać się nieczytelne i zagmatwane). Nie trzeba dodawać, ale na wszelki wypadek: jeśli chcesz mieć dosłowny cudzysłów w swoim tekście, musisz go \"
Jeśli umieścisz „\ n” w ciągu znaków w pliku xml, zostanie on potraktowany jako „\\ n”
Więc zrobiłem :
text = text.Replace("\\\n", "\n"); ( text is taken from resX file)
I wtedy na ekranie pojawia się przeskok linii
Korzystając z edytora tłumaczeń w Android Studio, wystarczy kliknąć ikonę po prawej stronie (lub użyć Shift-Enter), a następnie dodać podziały wierszy za pomocą powrotu. Spowoduje to prawidłowe wstawienie \ n do zlokalizowanego pliku strings.xml.
W najnowszej wersji Android Studio „\ n” zostanie wydrukowane tak, jakby miało tam być, chyba że cały ciąg jest w apostrofach
Na przykład:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="title">"Hello\nWorld!"</string>
</resources>
nie umieszczaj spacji po \ n, w przeciwnym razie nie zadziała. Nie znam powodu, ale ta sztuczka zadziałała na mnie całkiem nieźle.
Chcę rozwinąć tę odpowiedź. Miały na myśli tę ikonę:
Otwiera "prawdziwe okno edytora" zamiast pola tekstowego z ograniczonymi funkcjami w dużym przeglądzie. W tym oknie edytora dozwolone są znaki specjalne, podziały wierszy itp., Które po zapisaniu są konwertowane na prawidłowy „kod” xml
Właśnie stanąłem przed tym problemem. nie działał TextView
z parametrami ograniczenia. android:lines="2"
Wydaje się, że dodanie tego rozwiązuje.