2011-05-27 12 views
10

Sólo quiero añadir una nueva línea de alguna manera a mi disposición lineal:Java Android: añadiendo una nueva línea utilizando TextView

layout = (LinearLayout) findViewById (R.id.layout); 

... //some other code where I've appended some strings already 

final TextView nline = new TextView(this); 
nline.setText(Html.fromHtml("<br>")); //i also tried: nline.setText("\n"); 
layout.addView(nline); 

Pero esto sólo añade unos pocos espacios. ¿Alguien me puede ayudar? Gracias.

+1

nline.setText (Html.fromHtml ("
")) ; funcionará correctamente si agrega nline.setSingleLine (false); –

Respuesta

10

Si solo quiere tener espacio vacío entre otras dos vistas, puede hacerlo en su XML (suponiendo que esté utilizando XML para el diseño). Algo así podría funcionar, básicamente poniendo una Vista con un fondo transparente y una altura determinada. Esto supone que tienes los parámetros que quieras en tus TextViews.

<TextView /> 

<View android:background="#00000000" 
     android:layout_height="12dp" //or whatever density pixel height you want 
     android:layout_width="fill_parent" /> 

<TextView /> 

Además, en lo que ha intentado anteriormente ... podría intentar un espacio y nueva línea ... que podría funcionar.

nline.setText(" \n"); 
+0

interesante, que nadie más menciona el espacio antes del '\ n', gracias Maximus :) – jpm

1

Es posible que necesite ajustar la InputType a TYPE_TEXT_FLAG_MULTI_LINE utilizando el método de Vista de Texto

tv.setInputType(tv.getInputType()|InputType.TYPE_TEXT_FLAG_MULTI_LINE); 

También podría simplemente establecer un margen/relleno en las otras vistas setInputType(). Creo que TextViews no se debe usar mal como espaciadores.

23

Primero debe hacer que su TextView sea multilínea. Y luego use la cadena simple "\n" para linebreak.

final TextView nline = new TextView(this); 
nline.setSingleLine(false); 
nline.setText("first line\n"+"second line\n"+"third line"); 
+0

está funcionando, gracias. – Ravikumar11

0

simple como:

String hello = getResources.getString(R.string.hello); 
String world = getResources.getString(R.string.world); 
textView.setText(hello + "\n" + world); 
0

simple dando "\ n" datos se muestran en una nueva línea

txtView.setText("Latitude :" + latitude + "\nLongitude :" + longitude); 
Cuestiones relacionadas