good days, writing android program online coupon service. creating page allows user bookmark item. after can see in bookmarks folder. problem encountering after bookmark clicked , selected specific item. when scroll selected bookmark becomes deselected state. how can prevent happening. below code
coupon.java
public class coupon { private string company_name; private string offer_desc; public coupon() { } public coupon(string company_name, string offer_desc) { this.company_name = company_name; this.offer_desc = offer_desc; } public string getcompany_name() { return company_name; } public void setcompany_name(string company_name) { this.company_name = company_name; } public string getoffer_desc() { return offer_desc; } public void setoffer_desc(string offer_desc) { this.offer_desc = offer_desc; } }
couponviewholder.java
public class couponviewholder extends recyclerview.viewholder{ protected textview company_name; protected textview offer_desc; protected likebutton star_button; protected likebutton heart_button; public couponviewholder(final view item){ super(item); company_name = (textview) item.findviewbyid(r.id.company_name); offer_desc = (textview) item.findviewbyid(r.id.offer_desc); star_button = (likebutton) item.findviewbyid(r.id.star_button); heart_button = (likebutton) item.findviewbyid(r.id.heart_button); } }
couponadapter.java
public class couponadapter extends recyclerview.adapter<couponviewholder>{ private list<coupon> couponlist; public couponadapter(list<coupon> couponlist) { this.couponlist = couponlist; } @override public couponviewholder oncreateviewholder(viewgroup parent, int viewtype) { view v = layoutinflater.from(parent.getcontext()) .inflate(r.layout.fragment_one_card, parent, false); couponviewholder vh = new couponviewholder(v); return vh; } @override public long getitemid(int position) { return super.getitemid(position); } @override public void onbindviewholder(couponviewholder holder, int position) { coupon coupon = couponlist.get(position); holder.company_name.settext(coupon.getcompany_name()); holder.offer_desc.settext(coupon.getoffer_desc()); holder.heart_button.setliked(false); holder.star_button.setliked(false); holder.heart_button.setonlikelistener(new onlikelistener() { @override public void liked(likebutton likebutton) { notifydatasetchanged(); } @override public void unliked(likebutton likebutton) { notifydatasetchanged(); } }); } @override public int getitemcount() { return couponlist.size(); } }
thank you
you have save selected things on database or sharedpreferences or whatever saving method use. can create interface making action on class or activity.
Comments
Post a Comment