我创建了一个带有自定义列表行的列表视图。该列表行包含一个带有四个图像按钮的图像视图:
<?xml version="1.0" encoding="utf-8"?>
<ImageView
android:padding="2dip"
android:id="@+id/list_image"
android:layout_width="match_parent"
android:layout_height="200dip"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:src="@drawable/test"
android:scaleType="centerCrop"/>
<LinearLayout
android:paddingTop="5dip"
android:id="@+id/linear"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/list_image"
android:layout_alignRight="@+id/list_image"
android:layout_below="@+id/list_image"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/copyLink"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/copy"
android:background="@color/white"
/>
<ImageButton
android:id="@+id/visitHP"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/website"
android:background="@color/white" />
<ImageButton
android:id="@+id/delete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/delete"
android:background="@color/white" />
<ImageButton
android:id="@+id/share"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@drawable/ic_social_share"
android:background="@color/white" />
</LinearLayout>
如图:
现在我想为每个按钮添加一个 onclicklistener,我可以在其中获取行的索引或行的对象。
我尝试将 OnClickListener 实现到我的 ArrayAdapter:
ImageButton btn = (ImageButton) convertView.findViewById(R.id.delete);
btn.setOnClickListener(this);
public void onclick(View v) {
int img = v.getId();
}
但是有了这个我不会得到行的索引。
我应该如何解决这个问题?谢谢