2012-01-21 63 views
0

我想從一個矢量/陣列特定對象安排到一個網格在陣列/矢量排列對象到網格

目前,我知道如何創建對象的過程中做到這一點。

下面是我創建的網格功能:

function ArrangeInGrid(uiRow:uint, uiCol:uint, iOffsetX:int, iOffsetY:int):void 
{ 
    for(var i:uint = 0; i < uiRow; ++i) 
    { 
      for(var j:uint = 0; j < uiCol; ++j) 
      { 
       var card:MovieClip = new MovieClip(); 
       card.x += iOffsetX + i * card.width; 
       card.y += iOffsetY + j * card.height; 
       stage.addChild(card); 
      } 
    } 
} 

現在我希望能夠應用在一個陣列/矢量排列對象的相同的邏輯在一個網格,我該怎麼辦呢?

或者建議一個更有效的方法來做到這一點(如果有的話)。

注:

  • 我希望它是在網格可以有多少行和列有彈性。

  • 我使用的矢量已經有了卡片。

  • 我不能將卡片插入手動創建卡片的方式。

讓我知道如果你需要任何更多的信息。


謝謝。

回答

0

假設您有一個包含uiRow x uiCol元素的一維數組。

function ArrangeInGrid(cards:Vector.<MovieClip>, uiRow:uint, uiCol:uint, iOffsetX:int, iOffsetY:int):void 
{ 
    var arrayIndex:uint; 

    for(var i:uint = 0; i < uiRow; ++i) 
    { 
      for(var j:uint = 0; j < uiCol; ++j) 
      { 
       var card:MovieClip = cards[arrayIndex++]; 
       card.x += iOffsetX + i * card.width; 
       card.y += iOffsetY + j * card.height; 
       stage.addChild(card); 
      } 
    } 
}