android: listView items have button -

i have entries in list view item.
when click on item first button....only last item button color value changing. when click on item second button ....only last item button color value changing.
when click on first item got position = 0 , offer_id = o101
when click on second item got position = 1 , offer_id = o103
when click on third item got position = 2 , offer_id = o104
every time when click on button of item of list view ... button of last item of list view color gets changed.
i want whenever click on button of list item, button of list item should change. how corrected. code....
@override public view getview(final int position, view convertview, viewgroup parent) { if (convertview == null) { holder = new viewholder(); convertview = minflater.inflate(r.layout.offer_list_item, parent, false); holder.tv1 = (textview) convertview .findviewbyid(r.id.offer_name); holder.tv2 = (textview) convertview .findviewbyid(r.id.expiry_date); holder.b1 = (button) convertview.findviewbyid(r.id.like_button); holder.b2 = (button) convertview .findviewbyid(r.id.share_button); holder.tvoid = (textview) convertview .findviewbyid(r.id.offer_id); holder.tv = (textview) convertview.findviewbyid(r.id.like); convertview.settag(holder); } else { holder = (viewholder) convertview.gettag(); } final offeritem = item.get(position); holder.tv1.settext(it.getoffer_name()); final string message = holder.tv1.gettext().tostring(); holder.tv2.settext("offer ends: " + it.getexpiry_date()); holder.tvoid.settext(it.getoffer_id()); holder.tv.settext("like"); id_offiers_list.add(it.getoffer_id()); holder.b1.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { string offerid = id_offiers_list.get(position); system.out.println(offerid); if (clicked) { system.out.println(position); holder.b1 .setbackgroundresource(r.drawable.like_icon_hover); holder.tv.settextcolor(color.parsecolor("#eaa232")); clicked = false; } else { system.out.println(position); holder.b1.setbackgroundresource(r.drawable.like_icon); holder.tv.settextcolor(color.parsecolor("#454545")); clicked = true; } } }); holder.b2.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { intent facebookintent = new intent(intent.action_send); facebookintent.settype("text/plain"); // facebookintent.setpackage("com.facebook.katana"); facebookintent.putextra(intent.extra_text, message); startactivity(intent.createchooser(facebookintent, "share...")); } }); return convertview; }
remove holder)
@override public view getview(final int position, view convertview, viewgroup parent) { if (convertview == null) { convertview = minflater.inflate(r.layout.offer_list_item, parent, false); } textview tv1 = (textview) convertview .findviewbyid(r.id.offer_name); textview tv2 = (textview) convertview .findviewbyid(r.id.expiry_date); button b1 = (button) convertview.findviewbyid(r.id.like_button); button b2 = (button) convertview .findviewbyid(r.id.share_button); textview tvoid = (textview) convertview .findviewbyid(r.id.offer_id); textview tv = (textview) convertview.findviewbyid(r.id.like); final offeritem = item.get(position); tv1.settext(it.getoffer_name()); final string message = tv1.gettext().tostring(); tv2.settext("offer ends: " + it.getexpiry_date()); tvoid.settext(it.getoffer_id()); tv.settext("like"); id_offiers_list.add(it.getoffer_id()); b1.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { string offerid = id_offiers_list.get(position); system.out.println(offerid); if (clicked) { system.out.println(position); b1.setbackgroundresource(r.drawable.like_icon_hover); tv.settextcolor(color.parsecolor("#eaa232")); clicked = false; } else { system.out.println(position); b1.setbackgroundresource(r.drawable.like_icon); tv.settextcolor(color.parsecolor("#454545")); clicked = true; } } }); b2.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { intent facebookintent = new intent(intent.action_send); facebookintent.settype("text/plain"); // facebookintent.setpackage("com.facebook.katana"); facebookintent.putextra(intent.extra_text, message); startactivity(intent.createchooser(facebookintent, "share...")); } }); return convertview; }
Comments
Post a Comment