我有GridView
一堆使用自定义适配器填充的项目。网格视图CHOICE_MODE_MULTIPLE_MODAL
在 java 中设置为,我可以使用上下文操作栏选择内容(所有这些都很好)。
我希望网格项目在按下时突出显示,并在选择时具有不同的突出显示(正是您将在 ICS 的图库应用程序中看到的行为)。
我有一个在网格视图 XML 中指定的选择器,如下所示listSelector="@drawable/grid_item_selector"
:我也指定了android:drawSelectorOnTop="true"
。这是选择器 XML:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/grid_item_selected" android:state_activated="true"/>
<item android:drawable="@drawable/grid_item_selected" android:state_checked="true"/>
<item android:drawable="@drawable/grid_item_selected" android:state_selected="true"/>
<item android:drawable="@drawable/grid_item_pressed" android:state_pressed="true"/>
<item android:drawable="@android:color/transparent"/>
</selector>
按下状态完美运行。但是,选中/选中状态永远不会出现。
即使我在我的 java 代码中设置了要检查的项目,检查状态也永远不会出现。
我无法将选择器设置为网格项目本身的背景,因为我需要将选定的可绘制状态作为前景,而不是背景。