As usual, it depends. If your data is small enough and static enough, get it all at once and avoid the inherent latency of remote data retrieval entirely.
But rarely is data retrieval or processing the performance bottleneck. Most often it is screen rendering, and TileList can be a hog, depending on how you have implemented it. (How many and how complex are the tiles?) Use getTimer() to benchmark the various steps to verify where your bottleneck actually is. Regardless, consider disabling the TileList while it is rendering. I am not sure what the best event to use to indicate rendering complete will be. Knowing when a screen is fully rendered is not a simple thin, but I do not think you have to get the very latest event, just late enough to prevent clicking on stale data. Tracy Spratt, _____ From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf Of James Sent: Tuesday, April 20, 2010 7:37 AM To: flexcoders@yahoogroups.com Subject: [flexcoders] What is the best Way - Multiple DataProvider's or one? In my app I have a tilelist with an array collection as it's dp which is populated via remote xml from a mysql database. When a user clicks a certain category button in my app it sends a request to the server to tell it which category items the user wants to see which in turn changes the array collection that populates the tilelist so it shows items within that category. The thing is though this seems to be a bit unreliable as it means the user has to wait for a while for the dataprovider to change so sometimes they click to the next category and the items from the previous category are still shown in the tilelist. Is it better practice to have multiple dataproviders initialsed at startup which the user can switch between as they click each category rather than modifying the same dataprovider? Basically I'm just wondering what way would you guys do it? I thought using just one dataprovider would slim down the code and make the app faster and more reliable but now I'm not sure.