Как установить цвет для строки в Android

#android #string #textview

#Android #строка #textview

Вопрос:

У меня возникает webview . Я просто извлекаю webview's содержимое в string и отображаю его в textview . В onTouch случае текст будет прочитан вслух. Теперь я хочу выделить текст слово за словом в onTouch случае, когда текст произносится. Для textview мы можем использовать setTextColor . Но как setTextColor для строки?

Ответ №1:

Используйте SpannableString , например:

 final String s = editText.getText().toString();
final Spannable spannable = new SpannableString(s);
spannable.setSpan(new ForegroundColorSpan(Color.RED), 0, endIndex, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
  

Обновите endIndex , чтобы он указывал на конец любого произносимого слова,

Ответ №2:

Просто используйте подобное тоже

 String name = "Test String"; 
textView.setText( Html.fromHtml(String.format("<font color="#%s">text</font>", name ), TextView.BufferType.SPANNABLE));