English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Implementación de la función de cambio de color local de TextView en Android

在做项目的时候,遇到过一行文字有两种颜色。在菜鸟的时候直接会想到用多个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,long length=spannableString.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
tv.setText(spannableString);

donde "color de fondo predeterminado en rojo" es el texto que desea cambiar. El método setSpan tiene cuatro parámetros, ForegroundColorSpan es para establecer el color de frente del texto, es decir, el color del texto. Si desea agregar un color de fondo al texto, puede reemplazarlo con BackgroundColorSpan.4Es la posición de inicio del cambio de color del texto,

spannableString.length() es la posición de finalización del cambio de color del texto. El último parámetro es booleano y puede recibir las siguientes cuatro opciones.

Spanned.SPAN_INCLUSIVE_EXCLUSIVE desde el índice de inicio hasta el índice de finalización, incluyendo el índice de inicio

Spanned.SPAN_INCLUSIVE_INCLUSIVE desde el índice de inicio hasta el índice de finalización, incluyendo ambos índices

Spanned.SPAN_EXCLUSIVE_EXCLUSIVE desde el índice de inicio hasta el índice de finalización, pero sin incluir el índice de inicio y el índice de finalización

Spanned.SPAN_EXCLUSIVE_INCLUSIVE desde el índice de inicio hasta el índice de finalización, incluyendo el índice de finalización

Aquí está todo el contenido que hemos recopilado para usted sobre la implementación de la función de cambio de color local de TextView en Android. Puede buscar más artículos necesarios en el tutorial de Niyah, y agradecemos su apoyo.

Declaración: El contenido de este artículo se ha obtenido de la red, y el derecho de autor pertenece al propietario original. El contenido ha sido contribuido y subido por los usuarios de Internet de manera autónoma. Este sitio web no posee los derechos de propiedad, no ha sido editado artificialmente y no asume la responsabilidad de las responsabilidades legales relacionadas. Si encuentra contenido sospechoso de violación de derechos de autor, le invitamos a enviar un correo electrónico a: notice#w para denunciar y proporcionar evidencia.3Declaración: El contenido de este artículo se ha obtenido de la red, y el derecho de autor pertenece al propietario original. El contenido ha sido contribuido y subido por los usuarios de Internet de manera autónoma. Este sitio web no posee los derechos de propiedad, no ha sido editado artificialmente y no asume la responsabilidad de las responsabilidades legales relacionadas. Si encuentra contenido sospechoso de violación de derechos de autor, le invitamos a enviar un correo electrónico a: notice#w para denunciar y proporcionar evidencia. Una vez verificada, este sitio eliminará inmediatamente el contenido sospechoso de violación de derechos de autor.

Te gustará