【发布时间】:2011-12-20 18:24:59
【问题描述】:
是否可以在 MXML 类中将声明的组件作为 IFactory 访问?我已经多次为 Skin Parts 使用这种声明工厂的方式,但我从未弄清楚如何从 MXML 中访问这些工厂。
这是我期望的工作示例:
<fx:Declarations>
<fx:Component id="labelDisplay">
<s:Label fontSize="12" fontWeight="bold"/>
</fx:Component>
</fx:Declarations>
<fx:Script>
<![CDATA[
override protected function createChildren():void
{
super.createChildren();
var label1:Label = labelDisplay.newInstance();
addElement(label1);
var label2:Label = labelDisplay.newInstance();
addElement(label2);
var label3:Label = labelDisplay.newInstance();
addElement(label3);
}
]]>
</fx:Script>
* 编辑 *
我希望上述代码能够工作的原因是基于 Spark 蒙皮架构中处理动态皮肤部件的方式。如果上面的代码是 MXML 外观类的一部分,那么在我的宿主组件中,我可以有以下内容。
[SkinPart(required="true",type="spark.controls.Label")]
public var labelDisplay:IFactory;
在 Spark 蒙皮架构中,
【问题讨论】:
标签: apache-flex flex4 mxml