У меня есть TextView с несколькими ClickableSpans. Когда нажимается ClickableSpan, я хочу, чтобы он изменил цвет своего текста.
Я попытался установить список состояний цвета в качестве атрибута textColorLink TextView. Это не дает желаемого результата, потому что это приводит к изменению цвета всех диапазонов, когда пользователь щелкает в любом месте в TextView.
Интересно, что использование textColorHighlight для изменения цвета фона работает должным образом: щелчок по диапазону изменяет только цвет фона этого диапазона, а щелчок в любом другом месте TextView ничего не делает.
Я также попытался установить ForegroundColorSpans с теми же границами, что и ClickableSpans, где я передаю тот же список состояний цвета, что и выше, в качестве ресурса цвета. Это тоже не работает. Интервалы всегда сохраняют цвет состояния по умолчанию в списке состояний цвета и никогда не переходят в нажатое состояние.
Кто-нибудь знает как это сделать?
Это список состояний цвета, который я использовал:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:color="@color/pressed_color"/>
<item android:color="@color/normal_color"/>
</selector>