En un Android TextView, ¿es posible insertar párrafos?
A continuación se muestra un ejemplo del tipo de problema que tengo. Tengo datos en un pojo que tengo que mostrar en un textview … los datos tienen pseudo código que denota cada párrafo con [p]
Me gustaría analizar de alguna manera el [p] 's en los párrafos cuando se muestran en la vista de texto. Se puede hacer esto? ¿Hay algo que pueda sustituir por el [p] que hará un nuevo párrafo en la vista de texto?
- La marquesina de TextView no funciona
- Cambiar el texto de TextView
- Android TextView id con una variable?
- Android textview settext mostrar nullpointer excepción
- ¿Cómo puede mostrar texto al revés con una vista de texto en Android?
Question question = new Question(); question.setText("Here is the first paragraph.[p] And this should be the second."); TextView view = (TextView) findViewById(R.id.qtext); view.setText(question.getParsedText());
- ¿Cómo hacer que el texto se mueva de izquierda a derecha en Android?
- Android: ellipsize end - Caracteres adicionales después de la elipse
- Android TextView no actualiza su texto cuando textIsSelectable está establecido en true
- Obtener texto seleccionado de TextView
- Obtener el texto visible actual en la vista de texto
- Tener una vista en torno a otra vista
- Single TextView con texto coloreado múltiple
- Cómo establecer el texto de subrayado en textview?
Hola, analizaría toda la cadena y luego reemplazaría cada [p] con \ n o incluso \ n \ n como desee.
\ N en la cadena hace un salto de línea. Por ejemplo, úsalo así:
question.setText("Here is the first paragraph.\n\n And this should be the second.");`
El método que puede hacer que fácilmente es String.replace (…)
También puedes probar esto
String summary = "<html><font color=\"#FFFFFF\"" + <p align="+ "\"" +"left" + "\""+ ">" + "MY data" +"</p>"+ "</font></html>"; mTextView.setText(Html.fromHtml(summary));
<br>
y <p>
funcionan si necesitas otro formato como negrita y están en medio de un Html.fromHtml
:
import android.app.Activity; import android.os.Bundle; import android.text.Html; import android.widget.TextView; public class Main extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); final TextView tv = new TextView(this); tv.setText(Html.fromHtml("first<br><b>second</b>")); setContentView(tv); } }
Probado en Android 22.
TextView tw = findViewById(R.id.t); tw.setText("first line\nsecond line\nthird line");