Cómo establecer el color de UnderlineSpan?

Esta pregunta es un seguimiento de mi última pregunta: ¿Cómo resaltar texto como Android corrector ortográfico?

Estoy utilizando un UnderlineSpan para subrayar el texto en un EditText pero necesito el subrayado para estar en color como esta captura de pantalla del corrector ortográfico:

Introduzca aquí la descripción de la imagen

Por desgracia, no se puede hacer esto únicamente con un Span – no hay métodos públicos para hacer lo que pides. Hay un método para establecer el color de subrayado en TextPaint independiente del color de texto (se puede ver en el código fuente de SuggestionSpan), pero está oculto .

Si puede obtener acceso al EditText, puede manejar el Span y dibujar el subrayado usted mismo, pero de lo contrario está fuera de suerte.

Así es como lo hice funcionar

Spanned part_1 = Html.fromHtml(getString(R.string.part1)); Spanned part_2 = Html.fromHtml("<u><font color='#2eb6f0'>Text in blue</font></u>"); Spanned part_3 = Html.fromHtml(getString(R.string.part3)); Spanned output = (Spanned) TextUtils.concat(part_1, part_2, part_3); textview.setText(output, TextView.BufferType.SPANNABLE); 

Aquí está la función que usted puede utilizar para fijar el color de la línea debajo del texto

 public void addUnderLineLink(TextView mTextView) { if (mTextView != null) { SpannableString content = new SpannableString(mTextView.getText().toString()); UnderlineSpan us=new UnderlineSpan(); TextPaint tp=new TextPaint(); tp.setColor(ContextCompat.getColor(getContext(),R.color.white)); us.updateDrawState(tp); content.setSpan(us, 0, mTextView.getText().toString().length(), 0); mTextView.setText(content); } } 
  • Html.ImageGetter TextView
  • TextView ClickableSpan estilo para estado pulsado
  • Cómo configurar el texto de TextView?
  • Posición aleatoria de TextView
  • Flujo textview alrededor de la imagen
  • Establecer el color específico de ColorStateList mediante programación
  • Vista de texto editable al hacer clic
  • Añadir "Ver más" al final de textview después de 3 líneas
  • Cómo configurar el fondo para textview en el código?
  • Android - Extensible TextView con animación
  • ¿Cómo repetir textview?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.