2011-10-18 14 views
0

我創建了一個自定義文本字段組件,我需要在一個單一的瑞士法郎的倍數。我還創建了一個非視覺包裝組件來管理它們。我正在從textfields發送信息到包裝。我打算使用子索引來將信息與正確的組件相關聯。問題發生在我有兩個textfield組件實例和一個包裝在舞臺上,我使用stage.numChildren,它返回1.我試圖找出這一點,但我完全卡住了。我很樂意根據要求提供有關項目的代碼或任何其他信息。預先感謝您嘗試提供幫助。使用stage.numChildren和其他舞臺方法時使用多個組件的問題

+0

當您在時間軸上或文檔類中編碼時,stage的初始子節點分別是MainTimeline或Main(或您命名文檔類的任何對象)對象。嘗試'DisplayObjectContainer(stage.getChildAt(0))。numchildren;'。 – Taurayi

回答

0

這是一個非常特殊的問題。試着追蹤你的舞臺的孩子和你的文本字段的父母。

for (var iChild:int=0; iChild<stage.numChildren; iChild++) 
{ 
    trace(stage.getChildAt(iChild)); 
} 

恕我直言,你的文本框不直接添加到舞臺上,他們可能具有相同的和獨特的父母。

+0

我的文本字段組件完全是代碼。當我運行你的蹤跡時,我得到了我用作組件容器的動畫片段。但我只有一個。 – James

+0

因此stage.numChildren == 1 ...你必須從你的文本字段的父文本中獲取文本字段的索引:textfield.parent.getChildIndex(textfield) – Kodiak

+0

oh ok。這是一個愚蠢的錯誤。我現在就試試。非常感謝您的耐心。 – James