mardi 24 mars 2015

how to add setButtonOnClickListener at SimpleAdapter?


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