Я пытаюсь установить цвета из текстового представления на основе количества непрочитанных сообщений в канале. Как так:Селектор привязки данных в TextView textColor
android:textColor="@{channel.unreadCount > 0 ? @color/selector_conversation_row_title_unread : @color/selector_conversation_row_title_read}"
это только устанавливает цвет заголовка, в то время как:
android:textColor="@color/selector_conversation_row_title_unread"
этот код устанавливает TextColor как селектор, и если я нажмите TextView изменения цвета в отличие от первого оператора ,
selector_conversation_row_title_unread:
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_pressed="false" android:color="@color/colorConversationTitleUnread"/>
<item android:state_focused="true" android:state_pressed="true" android:color="#ffffff"/>
<item android:state_focused="false" android:state_pressed="true" android:color="#ffffff"/>
<item android:color="@color/colorConversationTitleUnread"/>
</selector>
selector_conversation_row_title_read:
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_pressed="false" android:color="@color/colorConversationTitle"/>
<item android:state_focused="true" android:state_pressed="true" android:color="#ffffff"/>
<item android:state_focused="false" android:state_pressed="true" android:color="#ffffff"/>
<item android:color="@color/colorConversationTitle"/>
</selector>
Почему селектор работает только как ?:
android:textColor="@color/selector_conversation_row_title_unread"
Спасибо, это отличная помощь! – Arnout