Vote count:
0
there is a button and some layout in my listview:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://ift.tt/nIICcg"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ffffff"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:descendantFocusability= "blocksDescendants"
>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingLeft="8dp" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center"
android:scaleType="fitCenter"
android:src="@drawable/link_img" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.94"
android:orientation="vertical"
android:paddingLeft="8dp" >
<TextView
android:id="@+id/tvChipName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="9dp"
android:text="test"
android:textColor="#000000"
android:textSize="22dp" />
<TextView
android:id="@+id/tvChipId"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="8dp"
android:text="test"
android:textColor="#aaaaaa"
android:textSize="18dp" />
<TextView
android:id="@+id/tvRemark"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="9dp"
android:paddingLeft="8dp"
android:text="test"
android:textColor="#aaaaaa"
android:textSize="18dp" />
</LinearLayout>
<ImageButton
android:id="@+id/imgbtnlink"
android:layout_width="80dp"
android:layout_height="match_parent"
android:layout_gravity="end"
android:background="#00000000"
android:scaleType="fitCenter"
android:focusable = "false"
android:src="@drawable/link" />
</LinearLayout>
</LinearLayout>
and I find a ListAdapter class working fine
public class ListAdapter extends SimpleAdapter {
public ListAdapter(Context context, List<? extends Map<String, ?>> data,
int resource, String[] from, int[] to) {
super(context, data, resource, from, to);
this.myInflater = LayoutInflater.from(context);
}
@Override
public boolean hasStableIds() {
// TODO Auto-generated method stub
return true;
}
public void setClickLink() {
}
private LayoutInflater myInflater;
private ViewTag viewTag;
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = myInflater.inflate(R.layout.chip_item, null);
viewTag = new ViewTag(
(ImageButton) convertView.findViewById(R.id.imgbtnlink));
convertView.setTag(viewTag);
} else {
viewTag = (ViewTag) convertView.getTag();
}
viewTag.btn1.setOnClickListener(new ItemButton_Click(position));
return convertView;
}
public class ViewTag {
ImageButton btn1;
public ViewTag(ImageButton button1) {
this.btn1 = button1;
}
}
class ItemButton_Click implements OnClickListener {
private int position;
ItemButton_Click(int pos) {
position = pos;
}
public void onClick(View v) {
DebugLog.v("ItemButton = " + position);
}
}
}
then I want to modify it and add a method like setButtonOnClickListener in ListAdapter usage like setOnItemClickListener to deal the contro for the buttons in the list.
listView.setButtonOnClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
but I cant find any way to do it.
asked 59 secs ago
how to add setButtonOnClickListener at SimpleAdapter?
Aucun commentaire:
Enregistrer un commentaire