Flash 嵌入SWC无法访问文本字段

Flash 嵌入SWC无法访问文本字段,flash,actionscript-3,flash-builder,Flash,Actionscript 3,Flash Builder,我在flash builder项目中添加了一个带有movieclip资产的SWC。我可以使用点语法访问所有movieclips,但当我尝试访问文本字段时,它会抛出一个错误,表示它是无法访问空对象引用的属性或方法 这是我的密码: // gameMenuLevels is a main asset. this.object = new gameMenuLevels(); 这一切都很好,我可以深入到两个层次: var levelString:String = "level" + Utils.zero

我在flash builder项目中添加了一个带有movieclip资产的SWC。我可以使用点语法访问所有movieclips,但当我尝试访问文本字段时,它会抛出一个错误,表示它是
无法访问空对象引用的属性或方法

这是我的密码:

// gameMenuLevels is a main asset.
this.object = new gameMenuLevels();
这一切都很好,我可以深入到两个层次:

var levelString:String = "level" + Utils.zeroPad(i + 1, 3);
var level:MovieClip = this.object[levelString] as MovieClip;
var bronze:MovieClip = level.bronze as MovieClip;
但当我尝试获取文本字段时:

(bronze.getChildByName("levelNumber") as TextField)

它抛出了错误。

通过尝试和错误,并从这个答案中获得对另一个问题的帮助:


我发现必须给我的所有子元素一个链接名(导出到actionscript)和一个实例名。完成后,我就可以作为属性访问子元素。希望这能帮助其他人。

看起来您的变量
brown
null
。请尝试
trace(brown)
trace(level.brown)
并查看是否有任何结果。只需使用点语法即可获取文本字段,而无需使用getChildByName。例如,如果您有一个实例名为“levelNumber”的文本字段,它应该可以作为bronze访问。levelNumber这是我假设的,但它不起作用。@Laurent it跟踪到它,它为空。所以让我来弄清楚,然后再更新一下。@brenjt,确保Brown实际上是一部电影。如果它实际上是一个精灵或显示对象,则对MovieClip的转换将返回null。