2010-07-26 14 views
9

me gustaría mostrar un texto con un salto de línea en un mensaje de alerta:Html.fromHtml (cadena) + lineBreak Problema

private void showAbout() { 
     AlertDialog.Builder builder = new AlertDialog.Builder(context); 

     String message = "<b>Rechtlicher Hinweis:</b>\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Sed a dolor sapien. Etiam arcu erat, lobortis sed vestibulum ut, adipiscing et enim. Nulla vestibulum volutpat dolor, non pellentesque purus imperdiet vitae. Aenean et elit vel erat consectetur pulvinar. Sed semper, ante vel elementum aliquet, dui urna scelerisque tortor, eu auctor lorem nunc adipiscing velit. Praesent eget libero diam, eget imperdiet sem. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae.\n" + getVersionInfo(); 

     builder.setMessage(Html.fromHtml(message)); 
     builder.setCancelable(false); 
     builder.setPositiveButton("Close", new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface dialog, int id) { 
       dialog.cancel(); 
      } 
     }); 
     builder.setTitle("About"); 
     builder.setIcon(R.drawable.icon); 

     AlertDialog alert = builder.create(); 

     alert.show(); 
    } 

Sin embargo esto funciona más o menos bien, los saltos de línea

\ n

no se muestran en absoluto. Ya intenté reemplazar \n por \\n o incluso <\br> pero nada funcionó. ¿Alguna pista sobre cómo hacer esto?

Respuesta

18

Pruebe <br /> (tenga en cuenta que la barra es después de el nombre de la etiqueta más es una barra diagonal, no una hacia atrás).

+1

Omg. tan embarazoso pero esto funciona! Bien doneè – RoflcoptrException

2

La etiqueta de salto de línea HTML está <br/>

20

cambio

builder.setMessage(Html.fromHtml(message)); 

a

builder.setMessage(Html.fromHtml(message.replace("\n","<br />")); 
Cuestiones relacionadas