android - Change value of TextView on Item Click inside a RecyclerView? -
i developing app restaurant management, stuck @ point need update value of textview(outside of recyclerview) on item click inside recyclerview.
this adapter, consider textview outside adapter , set value on item click of plus , minus imageviews shown in below code...
public class myrecycleradapter extends recyclerview.adapter<myrecycleradapter.myholder> { arraylist<menuitem> menudetaillist; typeface font; public myrecycleradapter(arraylist<menuitem> menudetailarray){ this.menudetaillist = menudetailarray; } @override public myrecycleradapter.myholder oncreateviewholder(viewgroup parent, int viewtype) { view v = layoutinflater.from(parent.getcontext()).inflate(r.layout.list_menu_row_item, null); return new myholder(v); } @override public void onbindviewholder(final myrecycleradapter.myholder holder, final int position) { holder.txtsubmenutitle.settext(menudetaillist.get(position).gettitle()); holder.txtsubmenuprice.settext(menudetaillist.get(position).getprice()); holder.txtsubmenucount.settext(""+menudetaillist.get(position).getitemcount()); setcustomtypeface(holder.txtsubmenutitle, font); setcustomtypeface(holder.txtsubmenuprice,font); holder.imgviewsubmenuminus.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { //holder.ordercount = integer.parseint(holder.txtsubmenucount.gettext().tostring()); int itemcount = menudetaillist.get(position).getitemcount(); if (itemcount > 0) { itemcount = itemcount - 1; holder.txtsubmenucount.settext("" + itemcount); menudetaillist.get(position).setitemcount(itemcount); notifydatasetchanged(); } } }); holder.imgviewsubmenuplus.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { //holder.ordercount = integer.parseint(holder.txtsubmenucount.gettext().tostring()); int itemcount = menudetaillist.get(position).getitemcount(); if (itemcount < 20) { itemcount = itemcount + 1; holder.txtsubmenucount.settext("" + itemcount); menudetaillist.get(position).setitemcount(itemcount); notifydatasetchanged(); } }); } @override public int getitemcount() { return menudetaillist.size(); } public static class myholder extends recyclerview.viewholder { textview txtsubmenutitle; textview txtsubmenuprice; imageview imgviewsubmenuminus; imageview imgviewsubmenuplus; textview txtsubmenucount; private myholder(view row) { super(row); this.txtsubmenutitle = (textview) row.findviewbyid(r.id.list_txt_sub_menu_title); this.txtsubmenuprice = (textview) row.findviewbyid(r.id.list_txt_sub_menu_price); this.txtsubmenucount = (textview) row.findviewbyid(r.id.list_txt_sub_menu_count); this.imgviewsubmenuminus = (imageview) row.findviewbyid(r.id.list_img_sub_menu_minus); this.imgviewsubmenuplus = (imageview) row.findviewbyid(r.id.list_img_sub_menu_plus); } } private void setcustomtypeface(textview textview, typeface font) { textview.settypeface(font); } } thanks in advance...
1.in activity initialize textview
textview mytextview = (textview) findviewbyitd(r.id.textview); 2.add parameter textview in adapter's constructor
3.pass textview adapter
myrecycleradapter adapter = new myrecycleradapter(menu, mytextview);
4.manipulate want
arraylist<menuitem> menudetaillist; typeface font; textview mtextview; public myrecycleradapter(arraylist<menuitem> menudetailarray, textview tv){ this.menudetaillist = menudetailarray; mtextview = tv; } mtextview.settext("eat more pizza");
Comments
Post a Comment