Custom Listview in Android repeating same item -


i have custom arrayadapter in android populating custom listview. last item displayed on listview , iterated first item last(last item in array displayed x times in listview x number of items in array). have tried searching answers these address recycling of views make listview repeat first few items. mine repeats last item start finish. tried suggestions there still code runs same. array contents fine correct ones print in log. appreciated.here code

    public class videoqueueadapter extends baseadapter implements view.onclicklistener { /*********** declare used variables *********/ private activity activity; private arraylist data; private static layoutinflater inflater=null; public resources res; videolistmodel vid_list_item=null; int i=0; private context context;  /*************  customadapter constructor *****************/ public videoqueueadapter(activity a, arraylist d,resources reslocal) {     this.context = context;     /********** take passed val0ues **********/     activity = a;     data=d;    res = reslocal;     context = activity.getapplicationcontext();     /***********  layout inflator call external xml layout () **********************/     inflater = (layoutinflater) activity.getsystemservice(context.layout_inflater_service);  }  /******** size of passed arraylist size ************/ public int getcount() {      if(data.size()<=0)         return 1;     return data.size(); }  public object getitem(int position) {     return position; }  public long getitemid(int position) {     return position; }  /********* create holder contain inflated xml file elements ***********/ public static class viewholder{      public textview title;     public textview url;     public textview deadline;     public textview id;     public imageview thumbnail;  }  /*********** depends upon data size called each row , create each listview row ***********/ @override public view getview(int position, view convertview, viewgroup parent) {     view vi=convertview;     viewholder holder;      if(vi==null){          /********** inflate tabitem.xml file each row ( defined below ) ************/         vi = inflater.inflate(r.layout.activity_video_item, null);          /******** view holder object contain tabitem.xml file elements ************/         holder=new viewholder();      }     else{  holder=(viewholder)vi.gettag();}     holder.thumbnail = (imageview)vi.findviewbyid(r.id.vid_thumb);     holder.title = (textview)vi.findviewbyid(r.id.vid_title);     holder.url = (textview)vi.findviewbyid(r.id.vid_url);     holder.deadline = (textview)vi.findviewbyid(r.id.item_timeout);     holder.id = (textview)vi.findviewbyid(r.id.item_id);      /************  set holder layoutinflater ************/     vi.settag(holder);     if(data.size()<=0)     {         holder.title.settext("no data");      }     else     {         /***** each model object arraylist ********/         vid_list_item=null;         vid_list_item = (videolistmodel) data.get(position);          /************  set model values in holder elements ***********/         string title = "";          string img = vid_list_item.geturl();         img = "http://img.youtube.com/vi/"+ img+ "/0.jpg";         picasso.with(context).load(img).resize(115, 115).into(holder.thumbnail);          holder.title.settext(vid_list_item.gettitle());         holder.url.settext(vid_list_item.geturl());         holder.deadline.settext(vid_list_item.gettimeout());         holder.id.settext(vid_list_item.getid());         /******** set item click listner layoutinflater each row ***********/         vi.setonclicklistener(new onitemclicklistener(position));     }     return vi; }  @override public void onclick(view v) {     log.v("customadapter", "=====row button clicked"); }  /********* called when item click in listview ************/ private class onitemclicklistener  implements view.onclicklistener {     private int mposition;      onitemclicklistener(int position){         mposition = position;     }      @override     public void onclick(view arg0) {        // customlistviewandroidexample sct = (customlistviewandroidexample)activity;        // sct.onitemclick(mposition);      } }    } 

http://www.javacodegeeks.com/2013/09/android-viewholder-pattern-example.html


i hope you. code have wrong in viewholder


Comments

Popular posts from this blog

android - MPAndroidChart - How to add Annotations or images to the chart -

javascript - Add class to another page attribute using URL id - Jquery -

firefox - Where is 'webgl.osmesalib' parameter? -