English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在做项目的时候,遇到过一行文字有两种颜色。在菜鸟的时候直接会想到用多个TextView来实现。后来自己学的多了就找到了更为简单的方法了。
直接上代码:
方法一:
xml代码片段:
<TextView android:id="@"+id/tv" android:layout_width="wrap_content" android:layout_height="wrap_content" />
Java代码片段:
TextView tv=(TextView)findViewById(R.id.tv); String str="默认颜色<font color='#FF0000'>红颜色</font>"; tv.setTextSize(18); tv.setText(Html.fromHtml(str));
效果图如下:
当然,还可以改变两种颜色的文字的大小。
Java代码片段:
extView tv=(TextView)findViewById(R.id.tv); String str="默认颜色<font color='#FF0000'><small>红颜色</small></font>"; tv.setTextSize(18); tv.setText(Html.fromHtml(str));
效果图如下:
好的,就这样子了。一个小功能就完成了。
方法二:
用SpannableString来实现。
Java代码片段:
SpannableString spannableString = new SpannableString("默认颜色红颜色"); spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#FF0000")), 4,spannableString.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); tv.setText(spannableString);
dabei "Standardfarbe Rot" ist der zu ändernde Text. Die Methode setSpan hat vier Parameter, ForegroundColorSpan ist für die Vordergrundfarbe des Textes, also die Textfarbe. Wenn Sie eine Hintergrundfarbe für den Text hinzufügen möchten, können Sie sie durch BackgroundColorSpan ersetzen.4Für den Startort der Textfarbeänderung,
spannableString.length() ist der Abschlussort der Textfarbeänderung. Der letzte Parameter ist ein Boolean, der die folgenden vier Werte übernehmen kann.
Spanned.SPAN_INCLUSIVE_EXCLUSIVE von der Startmarke bis zur Endmarke, einschließlich der Startmarke
Spanned.SPAN_INCLUSIVE_INCLUSIVE von der Startmarke bis zur Endmarke, einschließlich sowohl der Startmarke als auch der Endmarke
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE von der Startmarke bis zur Endmarke, aber neither die Startmarke noch die Endmarke werden eingeschlossen
Spanned.SPAN_EXCLUSIVE_INCLUSIVE von der Startmarke bis zur Endmarke, einschließlich der Endmarke
Das sind alle Inhalte, die wir Ihnen zu der Funktion der lokalen Farbänderung von TextView in Android zusammengetragen haben. Weitere Inhalte können Sie im Naihua-Tutorial suchen, das die von Ihnen benötigten Artikel enthält. Vielen Dank für Ihre Unterstützung.
Erklärung: Der Inhalt dieses Artikels wurde aus dem Internet entnommen und gehört dem jeweiligen Urheber. Der Inhalt wurde von Internetbenutzern freiwillig beigesteuert und hochgeladen. Diese Website besitzt keine Eigentumsrechte und hat den Inhalt nicht manuell bearbeitet. Sie übernimmt auch keine rechtlichen Verantwortlichkeiten. Wenn Sie Inhalte mit möglichen Urheberrechtsverletzungen finden, senden Sie bitte eine E-Mail an: notice#oldtoolbag.com (Bitte ersetzen Sie # durch @ beim Senden von E-Mails zur Meldung von Verstößen und fügen Sie relevante Beweise bei. Bei nachgewiesenen Verstößen wird diese Website den beschuldigten Inhalten sofort entledigen.)