带有自定义backgroundSelector的MultiChoiceMode

时间:2013-08-20 17:01:46

标签: android android-listview

我有一个带有multiChoiceMode和contextual actionBar的android listView。

最近我更新了我的listItems的背景(像现在谷歌的新卡片布局;))这就是我需要自定义选择器的原因。一切正常,但是当我尝试长按listItem时,上下文actionBar会显示,但所选的listItem不会保持突出显示。

这是我的选择器代码:

<?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@android:color/holo_blue_light" android:state_pressed="true"/>
    <item android:drawable="@android:color/holo_green_dark" android:state_checked="true"/>
    <item android:drawable="@drawable/background_card"/>
</selector>

这是我的listView代码:

<ListView
    android:id="@+id/android:list"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:background="@drawable/list_selector"
    android:divider="@android:color/transparent"
    android:dividerHeight="10.0sp"
    android:fastScrollEnabled="true" >
</ListView>

我一直在尝试列表选择器的所有选择状态(包括state_activated),但没有任何效果。

非常感谢提前 加布里埃尔Unterholzer

1 个答案:

答案 0 :(得分:0)

您需要使用state:activated代替state:checked

见这里:ListFragment multi-choice does not show selection