The following example shows how you can add a Sprite to the display object by using the Spark SpriteVisualElement object in Flex 4 and calling the addChild() method.
Full code after the jump.
The following example(s) require Flash Player 10 and the Adobe Flex 4 SDK. To download the Adobe Flash Builder 4 beta, check out the Adobe Flash Builder 4 page on the Adobe Labs site. To download the latest build of the Flex 4 SDK, see http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+4. For instructions on using the beta Flex 4 SDK in Flex Builder 3, see "Using the beta Flex 4 SDK in Flex Builder 3".
<?xml version="1.0" encoding="utf-8"?> <!-- http://blog.flexexamples.com/2009/11/20/adding-a-sprite-to-the-display-list-in-flex-4/ --> <s:Application name="Spark_SpriteVisualElement_addChild_test" xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/halo" initialize="init();"> <fx:Script> <![CDATA[ private const spr1:Sprite = new Sprite(); private const spr2:Sprite = new Sprite(); private function init():void { spr1.graphics.beginFill(0xFF0000, 0.5); spr1.graphics.drawRect(10, 10, 100, 80); spr1.graphics.endFill(); con.addChild(spr1); spr2.graphics.beginFill(0x0000FF, 0.3); spr2.graphics.drawRect(20, 20, 80, 100); spr2.graphics.endFill(); con.addChild(spr2); } ]]> </fx:Script> <s:SpriteVisualElement id="con" /> </s:Application>
This entry is based on a beta version of the Flex 4 SDK and therefore is very likely to change as development of the Flex SDK continues. The API can (and will) change causing examples to possibly not compile in newer versions of the Flex 4 SDK.

{ 6 comments… read them below or add one }
Hello Peter,
Thank you for sharing another quite useful technique.
One question: you declare the sprite as ‘contant’; what’s the advantage in comparison with just ‘var’?
Thanks,
Igor Borodin
@Igor,
No reason, it was just a silly little example and I knew the Sprite would never change.
Peter
Excellent little example. Thank you!
Peter, can you not add graphics to a SpriteVisualElement object with FXG?
@lee probert,
I’m not sure. What does your FXG look like?
Peter
Thanks, I was looking for this !!
greets Maxim Gladines