У меня есть 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>