Android List view buttons text color changing when scrolling top to bottom? -


i have listview , populated listview textview , button using custom adapter.i had generated click event button in custom adapter.in click event trying change button text , color,up here working fine when scroll listview , down text color of other button changing.i had stop here past couple of days...

here code had tried far

@override     public view getview(final int position, view convertview, viewgroup parent)      {         view v=convertview;         final viewholder holder;         if(convertview ==null)         {             convertview = minlfater.inflate(r.layout.attendancelistview,null);             holder = new viewholder();             holder.b1 = (button)convertview.findviewbyid(r.id.row3);             holder.tv1 = (textview)convertview.findviewbyid(r.id.row1);             holder.tv2 = (textview)convertview.findviewbyid(r.id.row2);             convertview.settag(holder);         }         else         {             holder =(viewholder) convertview.gettag();         }         //list<studentdata> data = list.get(position).rno;         holder.tv1.settext(string.valueof(list.get(position).rno));         holder.tv2.settext(list.get(position).studentname);         holder.b1.settext(list.get(position).attendance);         holder.b1.setonclicklistener(new view.onclicklistener() {              @override             public void onclick(view v)             {                 if(holder.b1.gettext().equals("present"))                 {                     holder.b1.settext("absent");                     //list.get(position).put("attendance", "absent");                      holder.b1.settextcolor(color.red);                 }                 else if(holder.b1.gettext().equals("absent"))                 {                     holder.b1.settext("present");                     //list.get(position).put("attendance", "present");                     holder.b1.settextcolor(color.green);                 }                 string rno1=  string.valueof(holder.tv1.gettext());                 name=string.valueof(holder.tv2.gettext());             }          });         return convertview;     }     static class viewholder     {         button b1;         textview tv1,tv2,tv3;     } 

if holder.b1 button text changing reason not handling getview properly.

i guess returns integer id

list.get(position).rno 

so need store id in arraylist example

//declare outside of getview().     arraylist<integer> your_number = new arraylist(); 

and in button click

holder.b1.setonclicklistener(new view.onclicklistener() {              @override             public void onclick(view v)             {                 if(holder.b1.gettext().equals("present"))                 {                     holder.b1.settext("absent");                     //list.get(position).put("attendance", "absent");                      holder.b1.settextcolor(color.red); your_number.add(list.get(position).rno);                 }                 else if(holder.b1.gettext().equals("absent"))                 {                     holder.b1.settext("present");                     //list.get(position).put("attendance", "present");                     holder.b1.settextcolor(color.green); your_number.remove(list.get(position).rno);                 }                 string rno1=  string.valueof(holder.tv1.gettext());                 name=string.valueof(holder.tv2.gettext());             }          }); 

and in getview()

if (your_number.contains(list.get(position).rno)){ //set text }else{ //set text } 

Comments

Popular posts from this blog

How to connect android app to App engine -

gcc - MinGW's ld cannot perform PE operations on non PE output file -

php - display validation error message next to the textbox in codeigniter -