> > I'm not seeing any evidence why getViewTypeCount() or getItemViewType() > would be needed. Based on the description, the items views appear to > be homogeneous. > I misunderstood his post... I thought A,B,C,D,E,F, and G were each different custom view types...
Thanks, Justin Anderson MagouyaWare Developer http://sites.google.com/site/magouyaware On Fri, Jul 27, 2012 at 12:54 PM, Kostya Vasilyev <kmans...@gmail.com>wrote: > I'm not seeing any evidence why getViewTypeCount() or getItemViewType() > would be needed. Based on the description, the items views appear to > be homogeneous. > > It looks weird to me that "public void refreshView" does not take an "int > position" parameter. How does it know that it needs to set the views with > the data for the "position"'th item? > > And that's probably what the issue is - the original MyItemView created > for item A is reused for item F, and B for G, so it updates the views with > the wrong data. > > Another point - it's not necessary to call invalidate() like you're doing. > > -- K > > > 2012/7/27 Justin Anderson <magouyaw...@gmail.com> > >> Look at and implement these methods: >> >> >> http://developer.android.com/reference/android/widget/Adapter.html#getItemViewType(int) >> >> http://developer.android.com/reference/android/widget/Adapter.html#getViewTypeCount() >> >> Thanks, >> Justin Anderson >> MagouyaWare Developer >> http://sites.google.com/site/magouyaware >> >> >> >> On Thu, Jul 26, 2012 at 4:59 AM, Sergio Panico >> <sergio.pan...@gmail.com>wrote: >> >>> Hi all, >>> I need your help to understand the refresh behaviour of a ListView where >>> I've defined a my custom view for the ListView's items. >>> >>> I think It's better explain it with an example: >>> my adapter contains 7 items: A, B, C, D, E, F, G correctly initialized, >>> filled and working. The associated ListView shows 5 (out of 7) items: A, B, >>> C, D, E. >>> The problem is that, when I scroll down the ListView's content instead >>> of showing me items F and G, I've got A and B items again. I understood >>> that this is "only" a viewing issue becouse the model elements associated >>> with the last two items, correctly belong to F and G items. :| >>> >>> Following the ovveride of getView(...) method of my adapter (extending >>> BaseAdapter): >>> >>> @Override >>> public View getView(int position, View convertView, ViewGroup >>> parent) { >>> MyItemView miv = (( MyItemView ) convertView); >>> >>> if (context == null) return null; >>> >>> if (convertView == null) { >>> miv = new MyItemView (........); >>> ..... >>> } else { >>> miv.refreshView(); //refresh the view content >>> } >>> >>> return miv; >>> } >>> >>> and the refreshView() method of MyItemView (extending LinearLayout): >>> >>> @Override >>> public void refreshView() { >>> label1.setText(......); >>> label2.setText(......); >>> label2.setText(......); >>> >>> invalidate(); >>> } >>> >>> Thanks a lot to all! >>> Bye >>> Sergio >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Android Developers" group. >>> To post to this group, send email to android-developers@googlegroups.com >>> To unsubscribe from this group, send email to >>> android-developers+unsubscr...@googlegroups.com >>> For more options, visit this group at >>> http://groups.google.com/group/android-developers?hl=en >> >> >> -- >> You received this message because you are subscribed to the Google >> Groups "Android Developers" group. >> To post to this group, send email to android-developers@googlegroups.com >> To unsubscribe from this group, send email to >> android-developers+unsubscr...@googlegroups.com >> For more options, visit this group at >> http://groups.google.com/group/android-developers?hl=en >> > > -- > You received this message because you are subscribed to the Google > Groups "Android Developers" group. > To post to this group, send email to android-developers@googlegroups.com > To unsubscribe from this group, send email to > android-developers+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/android-developers?hl=en > -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en