studio salto retorno new linea carro android textview line line-breaks

retorno - salto de linea textview android



¿Cómo agregar un salto de línea en un Android TextView? (20)

Android versión 1.6 no reconoce / r / n. En su lugar, use: System.getProperty ("line.separator")

String s = "Line 1" + System.getProperty ("line.separator") + "Line 2" + System.getProperty ("line.separator");

Estoy tratando de agregar un salto de línea en el TextView.

Intenté sugerido / n pero eso no hace nada. Así es como configuro mis textos.

TextView txtSubTitle = (TextView)findViewById(r.id.txtSubTitle); txtSubTitle.setText(Html.fromHtml(getResources().getString(R.string.sample_string)));

Esta es mi cadena: <string name="sample_string">some test line 1 /n some test line 2</string>

Debería mostrarse así:

some test line 1 some test line 2

Pero se muestra así: some test line 1 some test line 2 .

¿Me estoy perdiendo de algo?


Como Html.fromHtml , simplemente utilicé este código para obtener String2 en la siguiente línea.

textView.setText(fromHtml("String1 <br/> String2"));

.

@SuppressWarnings("deprecation") public static Spanned fromHtml(String html){ Spanned result; if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) { result = Html.fromHtml(html,Html.FROM_HTML_MODE_LEGACY); } else { result = Html.fromHtml(html); } return result; }


Encontré otro método: es necesario agregar el atributo " android: maxWidth =" 40dp " ". Por supuesto, puede no funcionar perfectamente, pero da un salto de línea.


Esto funcionó para mí

android:text="First /n Second"


Esto funcionó para mí, tal vez alguien lo encontrará útil:

TextView textField = (TextView) findViewById(R.id.textview1); textField.setText("First line of text" + System.getProperty("line.separator") + "Linija 2");


Estoy leyendo mi texto de un archivo, así que tomé un enfoque ligeramente diferente, ya que al agregar / n al archivo apareció / n en el texto.

final TextView textView = (TextView) findViewById(R.id.warm_up_view); StringBuilder sb = new StringBuilder(); Scanner scanner = new Scanner(getResources().openRawResource(R.raw.warm_up_file)); while (scanner.hasNextLine()) { sb.append(scanner.nextLine()); sb.append("/n"); } textView.setText(sb.toString());


Hay dos formas de evitar esto Si usa su cadena como una cadena sin formato, necesita usar el carácter de nueva línea. Si lo usa como html, por ejemplo, Html.fromString con Html.fromString , la segunda variante es mejor.

1) Carácter de Newline /n

<string name="sample> This/nis a sample</string>

2) Etiqueta html newline o <br />

<string name="sample> This<br>is a sample</string>


Intenté todo lo anterior, investigué por mi cuenta y obtuve la siguiente solución para representar los caracteres de escape linefeed:

string = string.replace("///n", System.getProperty("line.separator"));

  1. Con el método de reemplazo, debe filtrar los avances de línea escapados (por ejemplo, ''// n'')

  2. Solo entonces cada instancia de los caracteres de escape de la línea ''/ n'' se representa en el salto de línea real

Para este ejemplo, utilicé una base de datos de Google Apps Scripting noSQL (ScriptDb) con datos formateados JSON.

Saludos: D


Intenta verificar tus localizaciones. Posible, intenta editar un archivo (localización), pero en realidad programa utilizando otro, como en mi caso . El idioma predeterminado del sistema es ruso, mientras trato de editar la localización en inglés.

En mi caso, la solución de trabajo es usar "/ n" como separador de línea:

<string name="string_one">line one. /nline two; /nline three.</string>


La manera más fácil de hacerlo es ir a valores / cadenas (en su carpeta de recursos)

Declara una cadena allí:

<string name="example_string">Line 1/Line2/Line n</string>

Y en su archivo xml específico simplemente llame a la cadena como

<TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/example_string" />


Los saltos de línea (/ n) solo funcionan si coloca el valor del recurso de cadena entre comillas como este:

<string name="sample_string">"some test line 1 /n some test line 2"</string>

No hará saltos de línea si lo pones sin comillas así:

<string name="sample_string">some test line 1 /n some test line 2</string>

sí, es así de fácil.


Si está utilizando XML para declarar su TextView use android:singleLine = "false" o en Java, use txtSubTitle.setSingleLine(false);


También puede agregar "&lt;br&#47;&gt;" en lugar de / n.

Es código escapado de HTML para <br/>

Y luego puedes agregar texto a TexView:

articleTextView.setText(Html.fromHtml(textForTextView));


También puedes usar String-Editor de Android Studio, genera automáticamente frenos de línea y cosas así ...


Usado Android Studio 0.8.9. La única forma que funcionó para mí es usar /n . Ni el envoltorio con CDATA ni el trabajo de <br /> ni el de <br /> funcionaron.


Yo uso lo siguiente:

YOUR_TEXTVIEW.setText("Got some text /n another line");


/ n no estaba funcionando para mí. Pude solucionar el problema cambiando el xml a texto y construyendo la propiedad textview text como a continuación.

android:text="Line 1 Line 2 Line 3 DoubleSpace"

Esperemos que esto ayude a aquellos que dijeron que / n no funcionó para ellos.


muy fácil: use "/ n"

String aString1 = "abcd"; String aString2 = "1234"; mSomeTextView.setText(aString1 + "/n" + aString2);

/ n corresponde a ASCII char 0xA, que es ''LF'' o línea de alimentación

/ r corresponde a ASCII char 0xD, que es ''CR'' o retorno de carro

esto data de las primeras máquinas de escribir, donde puedes elegir hacer solo un avance de línea (y escribir solo una línea más abajo), o un avance de línea + retorno de carro (que también se mueve al comienzo de una línea)

en Android / java el / n corresponde a un retorno de carro + avance de línea, ya que de lo contrario simplemente ''sobrescribiría'' la misma línea


ok lo descubrió:

<string name="sample_string"><![CDATA[some test line 1 <br />some test line 2]]></string>

así que envolver en CDATA es necesario y se agrega ruptura dentro como etiquetas html

¡Gracias por toda tu ayuda!


/n funciona para mí, así:

<TextView android:text="First line/nNext line"