需求: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无变化。