Flex - 浮动在画布顶部的对象?

时间:2010-06-27 21:05:52

标签: flex canvas

我想要一个带有一些“浮动”属性的画布。基本上当我添加孩子时,孩子应该漂浮在顶部。当我添加第二个孩子时,它应该漂浮在前一个孩子之上。

例如画布宽度为100,我有两个宽度为100且高度为75的VideoDisplay。

canvas.addChild(video0); 
// Or canvas.addChildAt(video0, 0); 
// video0 should be at x=0 and y=0
canvas.addChild(video1);
// Or canvas.addChildAt(video1, 1);
// video1 should be at x=0 and y=0, while video0 x=0 and y=75

我不确定这是否可行,通过Flex SDK或任何第三方库?感谢。

2 个答案:

答案 0 :(得分:1)

您需要做的是创建一个带有DisplayObject的函数,重新定位其他子元素,然后添加子元素。

private var displayObjects:ArrayCollection;

public function addFloatingChild(object:displayObject):void
{
    // loop through displayObjects to set new positions
    for(var i:uint; i < displayObjects.length; i++)
    {
        // logic for new position
    }

    // keep reference to child
    displayObjects.addItemAt(object, 0);

    // this will always put on top of other children
    // this will always position at 0, 0
    this.addChild(object);
}

答案 1 :(得分:0)

我只是用谷歌搜索了一下,找到了一个非常有用的第三方库flexlib。对于具有相同需求的用户,flexlib提供满足您需求的FlowContainer