自定义项目选择器绘制在完整的GridView上

时间:2012-02-23 11:47:41

标签: android android-gridview

在我的项目中我有几个GridView。默认项目选择器取决于设备,在我的Acer平板电脑上是黄色,在我的摩托罗拉手机上是蓝色。

我希望它对所有设备都是灰色的。

所以我用谷歌搜索并发现我必须在我的GridView中添加android:listSelector属性:

<GridView
    android:padding="5dip"
    android:id="@+id/labeled_gridview_gridview"
    android:layout_width="fill_parent"
    android:layout_height="0dip"
    android:layout_weight="1"
    android:columnWidth="125dp"
    android:stretchMode="columnWidth"
    android:gravity="center"
    android:listSelector="@drawable/list_selector"
    android:numColumns="auto_fit" >
</GridView>

list_selector.xml的位置:

<selector xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@+id/selector_item">
    <item
        android:state_pressed="true"
        android:drawable="@android:color/black">
    </item>

    <item
        android:state_enabled="true"
        android:state_focused="true"
        android:drawable="@android:color/white">
    </item>

    <item android:state_enabled="true"
        android:drawable="@android:color/white">
    </item>
</selector> 

我现在的问题是:当我点击GridView项目时,整个GridView背景变为黑色。这不是我想要的。我尝试将android:listSelector属性放到GridView项目布局中,但它没有做任何事情。

我的选择器错了吗?还是我的GridView?帮帮我吧!

1 个答案:

答案 0 :(得分:0)

您使用的是Holo主题吗?他们确保设计在所有类型的设备上看起来都一样。