Hi Ben
I'm developing a mobile project, not desktop!
Images in use are very small.
Usevirtuallayout is set on true.
The code is here: 

        <fx:Script>
                <![CDATA[
                        import spark.components.Button;
                        import spark.core.ContentCache;
                        
                        import events.SchedaEvent;
                        
                        static public const s_imageCache:ContentCache=new 
ContentCache();
                        
                        override public function set data(value:Object):void
                        {
                                super.data=value;
                                lezione.text=value.titolo;
                                img.source="img/lez/"+value.lezione+"g.png";
                                        
                                schede.removeAllElements();
                                for(var i:int=0; i<value.schede.length; i++)
                                {
                                        var button:Button=new Button();
                                        button.label=String(i+1);
                                        button.id=value.schede[i];
                                        button.height=40;
                                        button.width=40;
                                        
button.addEventListener(MouseEvent.CLICK, handleMouseClick);
                                        schede.addElement(button);
                                }       
                        }
                        
                        private function handleMouseClick(event:MouseEvent):void
                        {
                                sendEvent(parseInt(event.currentTarget.id));
                        }
                        
                        private function sendEvent(id:int):void
                        {
                                var e:SchedaEvent=new 
SchedaEvent(SchedaEvent.LOAD_SCHEDA);
                                e.Id=id;
                                
                                this.owner.dispatchEvent(e);
                        }
                ]]>
        </fx:Script>
        
        <s:HGroup width="100%" height="100%" paddingTop="3">
                <s:VGroup height="100%" width="20%" verticalAlign="top" 
horizontalAlign="center">
                        <s:Image width="80%" height="80%" id="img" 
contentLoader="{s_imageCache}"/>
                </s:VGroup>
                <s:VGroup height="100%" width="70%">
                        <s:Label width="100%" height="20%" id="lezione"/>
                        <s:TileGroup width="100%" height="80%" id="schede"/>
                </s:VGroup>
                
        </s:HGroup> 

-----Messaggio originale-----
Da: Ben Smeets [mailto:[email protected]] 
Inviato: martedì 3 settembre 2013 15.22
A: [email protected]
Oggetto: Re: Improve spark List performance

How many rows in the list? (i.c.w. useVirtualLayout)

The setup you mention shouldn't be a problem I think (unless the image you talk 
about is 200MB a pop), but depends on the implementation (details). E.g., if 
the buttons are created every scroll, instead of reused, that might be a cause.

Any code you can share, can help (me at least) to track down the culprit.

Not a guru here though, so maybe others will know off the top of their heads :)

Ben

P.S. We are talking desktop app here right? Mobile is a different beast all 
together (for me).



On 3 sep. 2013, at 15:16, Federico De Maddalena <[email protected]> 
wrote:

> Hi! I'm working on a mobile project.
> I created a spark List, which item renderer is an extension of 
> ItemRenderer. Each of my item renderer contains one spark Image, one 
> Label and a number of small buttons which varies from 3 to 20.
> Now, scrolling the list is terribly slow. There are ways to improve 
> scroll speed? I spent a lot of time but without success.
> Regards
> federico
> 

Reply via email to