Установите цвет редактирования текста в Android studio, например, в MS Word

#java #android #android-edittext

Вопрос:

Я создаю приложение для текстового редактора, в котором у пользователя есть возможность писать текст несколькими цветами. Я реализовал функцию изменения цвета выделенного текста. Теперь я хочу реализовать функцию, в которой пользователь может выбрать цвет для написания текста в этом цвете, не меняя цвет предыдущего текста. Проблема, с которой я сталкиваюсь, заключается в том, что всякий раз, когда я выбираю цвет, используя text.setTextColor(color); весь цвет редактируемого текста, меняется на этот цвет. Я изменяю цвет выделенного текста с помощью следующего кода.

 private void setColor(int color) {  int startSelection = text.getSelectionStart();  int endSelection = text.getSelectionEnd();   Spannable str = text.getText();  ForegroundColorSpan foregroundSpan = new ForegroundColorSpan(color);  if (startSelection gt; endSelection) {  str.setSpan(foregroundSpan, endSelection, startSelection, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);  text.setSelection(endSelection,startSelection);  } else {  str.setSpan(foregroundSpan, startSelection, endSelection, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);  text.setSelection(startSelection,endSelection);  }  }