2010-06-27 36 views
1

我想擁有一些「浮動」屬性的畫布。基本上,當我給孩子添加孩子時,孩子應該漂浮在頂部。當我添加第二個孩子時,它應該浮在上一個孩子的上面。Flex - 浮動在畫布頂部的對象?

例如畫布寬度爲100,我有兩個用的VideoDisplay 100的寬度和高度75

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或任何第三方圖書館?謝謝。

+0

是否需要成爲Canvas?聽起來就像你正在建立的一個List。 – 2010-06-27 21:29:08

回答

0

我剛剛搜索了一下,發現一個非常有用的第三方庫flexlib。對於那些有相同需求的用戶,flexlib提供了一個滿足您需求的FlowContainer

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); 
}