这是我第一次在动作脚本中使用递归,所以我确信有些东西我没有考虑到。 我正在尝试做的只是遍历阶段孩子并追踪孩子是什么和索引。这是一些代码。
public function recurseStage(dOC:DisplayObjectContainer)
{
var numCh = dOC.numChildren;
for(var i = 0; i < numCh; i++)
{
var child = dOC.getChildAt(i);
trace("child: " + child + " at i: " + i);
if(child.numChildren > 0)
{
recurseStage(child);
}
}
}
问题区域似乎是最后的recurseStage()调用。以及之前的if语句。我知道不是所有的孩子都会拥有这家酒店.numChildren但是我不知道该怎么用。这应该是一个简单的解决方案,但我的大脑现在没有帮助我。 如果还有比这更好的方法,请告诉我。提前谢谢。
答案 0 :(得分:3)
使用
if (child is DisplayObjectContainer && child.numChildren > 0)
而不是
if(child.numChildren > 0)