Apache flex “Flex编译器元数据”;“违约财产”;
鉴于以下情况:Apache flex “Flex编译器元数据”;“违约财产”;,apache-flex,actionscript-3,mxml,Apache Flex,Actionscript 3,Mxml,鉴于以下情况: <?xml version="1.0"?> <mx:Application xmlns:mx="http://www.adobe.com/2009/mxml"> <mx:Panel title="blah"> <mx:Button /> </mx:Panel> </mx:Application> 您能否告诉我,默认情况下,mxmlc在父元素(例如mx:Panel)中指定了子
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2009/mxml">
<mx:Panel title="blah">
<mx:Button />
</mx:Panel>
</mx:Application>
您能否告诉我,默认情况下,mxmlc在父元素(例如mx:Panel)中指定了子元素(例如mx:Button)的位置。您可以设置“DefaultProperty”编译器元数据标记,以指定它们的分配位置,但flex在未指定时会做什么
例如,我遍历了mx:Panel继承自的所有flex类的源代码,但从未提到DefaultProperty,这让我想知道DefaultProperty的默认值是多少
很抱歉,我已经彻底阅读了文档。当编写基于组件时,默认属性允许您指定一个可以用作子标记的属性。例如:
<MyComp:TextAreaDefaultProp>Hello</MyComp:TextAreaDefaultProp>
运行以下代码段:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute" width="535" height="345"
xmlns:local="*">
<mx:VBox>
<local:TextAreaDefaultProp id="a" defaultText="Hello"/>
<local:TextAreaDefaultProp id="b" > World </local:TextAreaDefaultProp>
<local:TextAreaDefaultProp id="c" />
<mx:TextArea id="z"/>
<mx:Button click="{z.text = a.defaultText
+ ' ' + b.defaultText
+ ' ' + (c.defaultText.length);}" />
</mx:VBox>
</mx:Application>
世界
在编写基于组件的组件时,默认属性允许您指定可以用作子标记的属性。例如:
<MyComp:TextAreaDefaultProp>Hello</MyComp:TextAreaDefaultProp>
运行以下代码段:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute" width="535" height="345"
xmlns:local="*">
<mx:VBox>
<local:TextAreaDefaultProp id="a" defaultText="Hello"/>
<local:TextAreaDefaultProp id="b" > World </local:TextAreaDefaultProp>
<local:TextAreaDefaultProp id="c" />
<mx:TextArea id="z"/>
<mx:Button click="{z.text = a.defaultText
+ ' ' + b.defaultText
+ ' ' + (c.defaultText.length);}" />
</mx:VBox>
</mx:Application>
世界
编译器实际上将容器的子组件视为特例。查看mx.core.Container
的childDescriptors
属性,了解一些解释。在MXML中创建Flex组件实例时,它不会立即实例化。而是创建一个“描述符”,用于在将来某个时间实例化组件,具体由容器的creationPolicy
属性确定。如果将-keep-generated actionscript
参数(或缩写版本-keep
)添加到编译器参数中,您将能够看到编译器从MXML生成的AS3代码。编译器实际上将容器的子组件视为特例。查看mx.core.Container
的childDescriptors
属性,了解一些解释。在MXML中创建Flex组件实例时,它不会立即实例化。而是创建一个“描述符”,用于在将来某个时间实例化组件,具体由容器的creationPolicy
属性确定。如果将-keep-generated actionscript
参数(或缩写版本-keep
)添加到编译器参数中,您将能够看到编译器从MXML生成的AS3代码