2010-08-09 23 views
0

如果我有一個容器,並且我將clipContent設置爲true,那麼我如何獲得其內部兒童的總高度?有沒有一種方法可以做到這一點,而不需要通過每個孩子進行巡視並總結高度(這對我來說會非常困難,因爲我有一個mx:具有可變寬度的Tile,所以我不知道它有多少行)如何獲取Flex中容器的childern的總高度?

任何想法? :)

回答

0

遍歷孩子:

var totalHeight : int = 0 
for (i: int = 0; int < container.numChildren; i++){ 
totalHeight += container.getchildAt(i).height; 
} 

該代碼是寫在一個瀏覽器和未經考驗的。

這聽起來像你使用的瓷磚風格佈局,其中瓷磚可能是不同的,未知的,寬度。真的嗎?這甚至有可能嗎?如果是這樣,您可能不需要容器的子項的總高度,而是所有容器的行的總高度。如果是這樣,只需跟蹤'y'變量。

事情是這樣的:

var totalHeight : int = 0 
var largestRowHeight : int = o; 
var previousY : int = 0; 
for (i: int = 0; int < container.numChildren; i++){ 
largestRowHeight = Math.max(largestRowHeight), container.getchildAt(i).height); 
if(previousY != container.getchildAt(i).y){ 
    totalHeight += largestRowHeight; 
    largestRowHeight = 0; 
} 
previousY = container.getchildAt(i).y; 
} 

代碼的最後一位是比第一位,甚至粗糙。

+0

好吧,我想我必須重複孩子畢竟......謝謝! – 2010-08-09 21:56:03