listview指定某item的点击效果

时间:2024-07-25 13:35:08

需求:listview的某些item能够点击,需要点击效果,有些item不能点击,需要屏蔽点击效果。

实现:

1.layout:

   <ListView
android:id="@+id/id_status_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:cacheColorHint="#00000000"
android:divider="@drawable/status_list_divider"
android:listSelector="@android:color/transparent" >
</ListView>

android:listSelector="@android:color/transparent"屏蔽点击item背景色变化

2.drawable:

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

指定点击背景,android:drawable="@android:color/holo_orange_light为系统默认的item点击背景

3.adapter:

 @Override
public View getView(int position, View convertView, ViewGroup parent) {
if (position == 5) {
convertView.setBackgroundResource(R.drawable.listitem_selector);
} }

指定position=5背景为第2步设定的selector。这样在点击position=5的item背景色变化,其余item无变化。