У меня есть ListView, который я хочу, чтобы фон его элемента превращался в зеленый цвет, когда элемент был нажат и остается серым, когда я отпускаю палец. Я использую селектор (listview_item_indicator.xml) для достижения этой цели:android: state_selected = "true" не работает в элементе ListView
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/grey" android:state_selected="true" ></item>
<item android:drawable="@color/green" android:state_pressed="true"></item>
</selector>
Затем я обновить файл XML элемента ListView, чтобы применить этот selecor так:
android:background="@drawable/listview_item_indicator"
Результатом является он становится зеленым, когда я нажимаю элемент, но он не держится серым, когда я отпускаю палец (он поворачивается к тому, что было до того, как я нажал). Я думаю, это означает, что <item android:drawable="@color/green" android:state_pressed="true"></item>
работал, но <item android:drawable="@color/grey" android:state_selected="true" ></item>
не работал. Зачем?
может делать setSelected (правда) для щелкнули помощи элемента. –
set default drawable color в селекторе –