Ich muss einen dreiteiligen Text anzeigen, daher habe ich Html.fromHtml folgendermaßen verwendet:
txtvw.setText(Html.fromHtml("<p align=right> <b> "
+ "Hi!" + " </br> <font size=6>"
+ " How are you "+"</font> </br>"
+ "I am fine" + " </b> </p>"));
Der HTML-Code ist korrekt, aber im Gerät wird er in einer Zeile angezeigt.
meine xml deklaration von textview ist:
<RelativeLayout
Android:id="@+id/Home"
Android:layout_width="fill_parent"
Android:layout_height="60dp"
Android:background="@drawable/transparentfooter"
Android:layout_above="@+id/bottombar" >
<TextView
Android:id="@+id/txt"
Android:layout_width="wrap_content"
Android:layout_height="fill_parent"
Android:textColor="@Android:color/white"/>
</RelativeLayout>
Die Art und Weise, wie Sie das <br>
-Tag verwendet haben, ist unangemessen. Verwenden Sie Folgendes:
txtvw.setText(Html.fromHtml("<p align=right> <b> "
+ "Hi!" + " <br/> <font size=6>"
+ " How are you "+"</font> <br/>"
+ "I am fine" + " </b> </p>"));
Es sollte <br/>
und nicht </br>
sein. Ich habe diesen Code getestet und er zeigt die 3 Zeilen wie erwartet an.
Html.fromHtml(String source)
jetzt veraltet von Api-24.
Von Api-24 wurde diese Methode in geändert
Html.fromHtml(String source,int flags)
Also können wir wie unten von Api 24 verwenden
txtvw.setText(Html.fromHtml("<p align=right> <b> "
+ "Hi!" + " <br/> <font size=6>"
+ " How are you "+"</font> <br/>"
+ "I am fine" + " </b> </p>"),Html.FROM_HTML_MODE_LEGACY);
Setzen Sie das Linien-Tag auf Ihr Layout Android: lines = "4"
<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent" >
<TextView
Android:id="@+id/text"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_centerHorizontal="true"
Android:layout_centerVertical="true"
Android:lines="4"
Android:text="@string/hello_world"
tools:context=".MainActivity" />
</RelativeLayout>
Schreiben Sie korrekte "br" -Html-Tags
TextView text =(TextView)findViewById(R.id.text);
text .setText(Html.fromHtml("<p align=right> <b> "
+ "<br>" +"Hi!" + " </br> "
+ "<br> How are you "+" </br>"
+ "<br>I am fine" + " </br> </b> </p>"));
textView.setText (Html.fromHtml (str, Html.FROM_HTML_MODE_COMPACT));