Click Event Not Working On Button In Listview Item
I am using a custom Listview with Custom views as list elements, each list item is a separate Custom view. The problem which I am facing is , click event on button in 1st item of L
Solution 1:
try this it will work
publicclassContactsAdapterextendsBaseAdapter {
ArrayList<ContactInfo> mlist;
Context mcontext;
publicBluetoothChatadpter(Context context,ArrayList<ChatInfo> mchtlist) {
mlist = mchtlist;
mcontext = context;
}
@OverridepublicintgetCount() {
return mlist.size();
}
@Overridepublic Object getItem(int postion) {
return mlist.get(postion);
}
@OverridepubliclonggetItemId(int position) {
return position;
}
@Overridepublic View getView(int position, View convertview, ViewGroup viewgroup){
Viewview=null;
if(convertview == null){
LayoutInflaterinflater= context.getLayoutInflater();
view = inflater.inflate(R.layout.contactrow, null);
ContactHolderholder=newContactHolder();
holder.txtviewfirstname = (TextView)view.findViewById(R.id.firstname);
holder.txtviewphone = (TextView)view.findViewById(R.id.phone);
holder.chkselected = (CheckBox)view.findViewById(R.id.check);
setOnClickListener(newOnClickListener() {
@OverridepublicvoidonClick(View arg0) {
// to open the selected file in resp// do your work here
}});
chkselected .setOnClickListener(newOnClickListener() {
@OverridepublicvoidonClick(View v) {
// Toast.makeText(context,// "checked is clicke="+pos, 12).show();if (chkselected.isChecked())
{
// do your work here
} else {
// do your work here
}
}
});
view.setTag(holder);
}
else{
view = convertview;
}
ContactHolderholder2= (ContactHolder) view.getTag();
holder2.txtviewfirstname.setText(list.get(position).firstname);
holder2.txtviewphone.setText(list.get(position).phonenumber);
holder2.chkselected.setChecked(list.get(position).selected);
return view;
}
}
Solution 2:
publicclassContactsAdapterextendsBaseAdapter {
ArrayList<ContactInfo> mlist;
Context mcontext;
publicBluetoothChatadpter(Context context,ArrayList<ChatInfo> mchtlist) {
mlist = mchtlist;
mcontext = context;
}
@OverridepublicintgetCount() {
return mlist.size();
}
@Overridepublic Object getItem(int postion) {
return mlist.get(postion);
}
@OverridepubliclonggetItemId(int position) {
return position;
}
@Overridepublic View getView(int position, View convertview, ViewGroup viewgroup){
Viewview=null;
if(convertview == null){
LayoutInflaterinflater= context.getLayoutInflater();
view = inflater.inflate(R.layout.contactrow, null);
ContactHolderholder=newContactHolder();
holder.txtviewfirstname = (TextView)view.findViewById(R.id.firstname);
holder.txtviewphone = (TextView)view.findViewById(R.id.phone);
holder.chkselected = (CheckBox)view.findViewById(R.id.check);
holder.chkselected.setOnCheckChangeListener(newCheckchangeListener() );
view.setTag(holder);
}
else{
view = convertview;
}
ContactHolderholder2= (ContactHolder) view.getTag();
holder2.txtviewfirstname.setText(list.get(position).firstname);
holder2.txtviewphone.setText(list.get(position).phonenumber);
holder2.chkselected.setChecked(list.get(position).selected);
return view;
}
classCheckchangeListenerimplementsOnCheckedChangeListener {
publicCheckchangeListener() {
// TODO Auto-generated constructor stub
}
@OverridepublicvoidonCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
// TODO Auto-generated method stubif (isChecked) {
// do your work here
} else {
// do your work here
}
}
}
}
Solution 3:
You can try to set onClick event in your Custom adapter and if you have time then check this tutorial for reference - http://androidforbeginners.blogspot.it/2010/03/clicking-buttons-in-listview-row.html
Post a Comment for "Click Event Not Working On Button In Listview Item"