首先說明一下我想實作的功能:

點選某個item之後,讓其顔色發生變化。如果變化網上有很多例子,我就不班門弄斧了。Listview之是以點選沒有反應是因為上圖中綠色部分(自己定義的一個繼承BaseAdapter的adapter來适應listview)将listview的item覆寫了。現在點選的隻是自定義的adapter中的convertView。
其次,自定義的adapter中包含一個ImageView和二個TextView。代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#fcfcfc"
android:orientation="vertical"
android:padding="6dp"
android:descendantFocusability="blocksDescendants">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="60dp"
android:background="@drawable/mm_listitem"
android:focusable="false"
android:gravity="center_vertical" >
<ImageView
android:id="@+id/userPhoto"
android:layout_width="55dp"
android:layout_height="55dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:paddingLeft="5dp"
android:src="@drawable/xiaohei" />
<TextView
android:id="@+id/friendName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/userPhoto"
android:padding="7dp"
android:textColor="#000" />
android:id="@+id/sendTime"
android:layout_alignParentRight="true"
android:textColor="#666" />
android:id="@+id/friendState"
android:layout_alignParentBottom="true"
</RelativeLayout>
</LinearLayout>
解決辦法:
在上面的xml中的LinearLayout中添加
即可以解決。
然後點選可以Toast點選的那個item。
自定義的adapter的getView沒有做任何修改。