使用Selector方式
item_select.xml内容,就是设置了按下和不按下的2种颜色:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/item_press" android:state_pressed="true"/>
<item android:drawable="@color/item_unpress" android:state_pressed="false"/>
</selector>
然后在item布局文件的,不是在GridView里配置,不是设置 android:listSelector=””
是在item布局的文件里的或者等布局,如下:
<?xml version="1.0" encoding="utf-8"?>
<!--在item布局的布局层,还要设置覆盖子控件的监听事件android:descendantFocusability="blocksDescendants"-->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="100dp"
android:layout_height="50dp"
**android:background="@drawable/grid_item_selector"**
android:layout_marginRight="10dp"
android:layout_marginLeft="10dp"
**android:descendantFocusability="blocksDescendants"**
>