2011-03-28 4 views

Respuesta

273

uso no es un blackslash un forwardslash. "\ N"

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

Además, si se desea usar la cadena como HTML, puede utilizar &lt;br /&gt; contra roturas de tuberías (<br />)

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="title">Hello&lt;br /&gt;World!</string> 
</resources> 
+16

para html '' es una buena opción también. – bigstones

+1

Sí, leería mucho mejor – binnyb

+2

En strings.xml solo acepta el formato HTML, por lo que < br/> es la solución adecuada proporcionada – akash89

39

Sé que esto es cuestión bastante viejo pero encabezó la lista cuando busqué. Así que quería actualizar con otro método.

En el archivo strings.xml que puede hacer el \ n o puede simplemente pulse Intro:

<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> 

Esto dará como resultado lo siguiente en la Vista de Texto:

Esta es tu cadena.

Esta es la segunda línea de su cadena.

Tercera línea de la cadena.

Esto se debe a que hubo dos devoluciones entre la declaración inicial de la cadena y la nueva línea. También agregué el \ n a él para mayor claridad, ya que cualquiera de ellos puede ser utilizado. Me gusta usar los retornos de carro en el xml para poder ver una lista o cualquier cadena multilínea que tenga. Mis dos centavos.

+3

Oh, eso es interesante. gracias por compartir. Además, me siento como un idiota por hacer esta pregunta, pero parece que ha ayudado a muchas personas. Jaja !! –

+4

esto no funciona para mí – Sam

+4

Parece que simplemente presionar Enter en Android Studio no funciona ... – Yeung

1

Si pones "\ n" en una cadena en el archivo XML, se toma como "\\ n"

Por lo tanto, lo hice:

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

Y entonces consigo un salto de línea en la pantalla

+2

Solo ocurre cuando agrega la cadena con el asistente. Si editas el xml, funciona –

+0

. Cometí este error también. Gracias por su consejo. Pero solo corregí todas las apariencias de \ n yo mismo. – Kanat

+0

No es una buena solución. Debería obtener el texto de los recursos y usarlo directamente. ¿Qué pasa si tienes que manejar más personajes especiales? Vas a escribir más código para ellos también? ¿Qué pasa si tienes casos extremos? – definera

0

muy simple que tienen que acaba de poner
\ n donde cada vez que quiere romper la línea en su recurso de cadena.

Por ejemplo

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

2

Ésta es una vieja pregunta, pero he encontrado que cuando se crea una cadena como esta:

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

La salida en su aplicación va a ser así (sin nueva línea)

My New line test 

Cuando coloca la cuerda en qu flotación marcas

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

aparecerá la nueva línea:

My 
New line test 

Espero que esto ayude a alguien!

+1

Funciona para mí, pero por las dudas, recuerde que cuando defina recursos como los de arriba, debe evitar usar 'Html.fromHtml'. Gracias –

0

Al usar el editor de traducciones en Android Studio simplemente haga clic en el ícono a la derecha (o use Shift-Enter) y luego agregue saltos de línea usando return. Esto insertará \ n correctamente en el strings.xml localizado.

Cuestiones relacionadas