我正在使用 Flex 4.6 并且有一个 AIR 应用程序
我有一个面板,上面有很多标签。我需要从另一个类访问这些标签。我不想传递所有标签对象。所以我考虑传入面板容器,然后通过 getElementByName() 方法访问标签。
这是我的标记:
<s:VGroup includeIn="SLA_textView" width="100%" height="100%"
paddingBottom="10" paddingRight="10">
<s:Panel id="SlaTextViewPanel" width="100%" height="100%"
title="test View">
<s:Label id="lbTotalBooks" name="test" x="82" y="62" />
</s:Panel>
</s:VGroup>
动作脚本代码如下所示:
getLabels(Container:Panel){
var _Container:Panel = Container;
//var tempLabel:Label = _Container.getChildByName("test") as Label;
var n:int = _Container.numChildren;
for (var i:int = 0; i < n; i++) {
var c:DisplayObject = _Container.getChildAt(i);
trace(c.name);
}
var tempLabel:Label = _Container.getChildByName("test") as Label;
为什么tempLabel
总是null
?
所以我试图遍历面板上对象的名称,而测试标签甚至没有出现?所以我在某个地方出了点问题。
痕迹:
instance1333
PanelSkin1074