Are you using a custom ItemRenderer?

 

Tracy Spratt,

Lariat Services, development services available

  _____  

From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On
Behalf Of nathanpdaniel
Sent: Tuesday, May 12, 2009 1:02 PM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] Buggy HorizontalList

 






I'm using the HorizontalList (HList) component and I've run into an issue
where when data is updated dynamically some items are not rendered.
I load data via an XML file which sets up in my app several
XMLListCollection variables. Users can select different menu options to
determine which collection is used as the dataProvider for the HList. These
collections range in length from 3 - 50 items. My HList only displays 5 at
any given time (with a horizontal scroll bar). 
What will happen occassionally is when I go from a short list (3 items) to a
larger list, items will not render. 
The new item at position HList.dataProvider[old list length - 1] (zero based
index) will be missing. Not as though I have invalid data so it renders
wrong but, as though the data is not there at all. It puts spacing in there
to account for it but, it's the equivalent of setting an object's visible
property to false but includeInLayout to true. The other 4 in the first 5
will render properly. I scroll the list to show more, HList.dataProvider[old
list length + 1] and HList.dataProvider[old list length + 2] will not
render. As I scroll away from the beginning of the list more and more of the
5 items to display won't render until it throws an error from all 5 not
rendering. However, if I go from a short list, of say 3 items, to a list of
4 items, then a list of 5 items, the probably is avoided across all
collections. It will occur if I go from a list of length < 5 directly to a
list of lenght > 5. Also of note, if the list length < 10, I can avoid
throwing errors, however, if it gets beyond that, it starts throwing them.
I am setting a filter on the HList.dataProvider saying if (of all products)
the product matches one of the two that need to be ignored, filter them from
the list. So irregardless of which collection is the dataProvider, if
product A or product B is in this list, filter it out. I am also using an
itemRenderer (a custom component to display an image).
Anyone have any ideas, it's been driving me nuts for a while now. Sometimes
it doesn't even happen at all and I've yet to be able to consistantly
reproduce it with anything. I'm sort of at a loss for what to do since, I
don't really know what's causing the issue... ??



Reply via email to