Wie kann ich definieren unterstrichen Text in einem Android-Layout xml
Datei?
Antworten
Zu viele Anzeigen?Dies kann erreicht werden, wenn Sie eine String-Ressource xml-Datei, die HTML-Tags unterstützt wie <b></b>
, <i></i>
y <u></u>
.
<resources>
<string name="your_string_here"><![CDATA[This is an <u>underline</u>.]]></string>
</resources>
Wenn Sie etwas aus dem Code unterstreichen möchten, verwenden Sie:
TextView textView = (TextView) view.findViewById(R.id.textview);
SpannableString content = new SpannableString("Content");
content.setSpan(new UnderlineSpan(), 0, content.length(), 0);
textView.setText(content);
Inhalt der Datei Strings.xml:
<resource>
<string name="my_text">This is an <u>underline</u>.</string>
</resources>
Die Layout-xml-Datei sollte die oben genannte String-Ressource mit den unten aufgeführten Eigenschaften der Textansicht verwenden:
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:text="@string/my_text"
android:selectAllOnFocus="false"
android:linksClickable="false"
android:autoLink="all"
/>
Die obige "akzeptierte" Antwort lautet NICHT funktionieren (wenn Sie versuchen, die Zeichenfolge zu verwenden wie textView.setText(Html.fromHtml(String.format(getString(...), ...)))
.
Wie in der Dokumentationen müssen Sie die öffnende Klammer der inneren Tags mit <
Das Ergebnis sollte z.B. wie folgt aussehen:
<resource>
<string name="your_string_here">This is an <u>underline</u>.</string>
</resources>
Dann können Sie in Ihrem Code den Text mit setzen:
TextView textView = (TextView) view.findViewById(R.id.textview);
textView.setText(Html.fromHtml(String.format(getString(R.string.my_string), ...)));
Für Button und TextView ist dies der einfachste Weg:
Schaltfläche:
Button button = (Button) findViewById(R.id.btton1);
button.setPaintFlags(button.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG);
Textansicht:
TextView textView = (TextView) findViewById(R.id.textview1);
textView.setPaintFlags(textView.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG);
- See previous answers
- Weitere Antworten anzeigen