List

by aaharu
♥1 | Line 83 | Modified 2010-07-04 11:51:07 | MIT License
play

ActionScript3 source code

/**
 * Copyright aaharu ( http://wonderfl.net/user/aaharu )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/mluO
 */

<?xml version="1.0" encoding="utf-8"?>
<!--
ListはFlex3から変わっててよくわかんない。
creationCompleteだと表示の順番ばらばらになる。
-->
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
               xmlns:s="library://ns.adobe.com/flex/spark" 
               xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" initialize="application1_initializeHandler(event)">
    <s:List x="10" y="10" width="400" height="100">
        <s:layout>
            <s:HorizontalLayout/>
        </s:layout>
        <s:dataProvider>
            <s:ArrayList source="{array2}"/>
        </s:dataProvider>
        <s:itemRenderer>
            <fx:Component>
                <s:ItemRenderer>
                    <s:Group width="100" height="100%" render="group1_renderHandler(event)">
                        <s:SpriteVisualElement id="sve"/>
                    </s:Group>
                    <fx:Script>
                        <![CDATA[
                            protected function group1_renderHandler(event:Event):void {
                                sve.addChild(data as Sprite);
                            }
                        ]]>
                    </fx:Script>
                </s:ItemRenderer>
            </fx:Component>
        </s:itemRenderer>
    </s:List>
    <s:List x="10" y="200" width="400" height="100">
        <s:layout>
            <s:HorizontalLayout/>
        </s:layout>
        <s:dataProvider>
            <s:ArrayList source="{array1}"/>
        </s:dataProvider>
        <s:itemRenderer>
            <fx:Component>
                <s:ItemRenderer>
                    <s:Group width="100" height="100%" creationComplete="group1_creationCompleteHandler(event)">
                        <s:SpriteVisualElement id="sve"/>
                    </s:Group>
                    <fx:Script>
                        <![CDATA[
                            import mx.events.FlexEvent;
                            
                            protected function group1_creationCompleteHandler(event:FlexEvent):void {
                                sve.addChild(data as Sprite);
                            }
                        ]]>
                    </fx:Script>
                </s:ItemRenderer>
            </fx:Component>
        </s:itemRenderer>
    </s:List>
    <fx:Script>
        <![CDATA[
            import frocessing.color.ColorHSV;
            import mx.events.FlexEvent;
            
            [Bindable]
            private var array1:Array = [];
            [Bindable]
            private var array2:Array = [];
            
            protected function application1_initializeHandler(event:FlexEvent):void {
                for(var i:uint = 0; i < 20; i++) {
                    var hsv:ColorHSV = new ColorHSV(i * 15);
                    var sp:Sprite = new Sprite();
                    sp.graphics.beginFill(hsv.toRGB().value);
                    sp.graphics.drawCircle(50, 50, 30);
                    sp.graphics.endFill();
                    array1.push(sp);
                    
                    var sp2:Sprite = new Sprite();
                    sp2.graphics.beginFill(hsv.toRGB().value);
                    sp2.graphics.drawCircle(50, 50, 30);
                    sp2.graphics.endFill();
                    array2.push(sp2);
                }
            }
        ]]>
    </fx:Script>
</s:Application>