我编写了以下自定义组件 SubNavBar.mxml:
<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" height="100" width="300"
creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.collections.XMLListCollection;
[Bindable] public var menuItems:XMLListCollection;
private function init():void
{
trace("SubNav: config = "+menuItems);
}
]]>
</mx:Script>
<mx:HBox y="30" id="menu">
<mx:List dataProvider="{menuItems}"/>
</mx:HBox>
</mx:Canvas>
我使用以下代码在父自定义组件中设置此组件:
<com:SubNavBar id="subNavMenu" menuItems="{subNavConfig}"
x="10" y="-15">
</com:SubNavBar>
每当trace
函数运行时init()
,该属性menuItems
就会返回null
。我似乎对其他变量类型没有这个问题,比如布尔或字符串。这是由于 XMLListCollection 对象的大小造成的吗?如何使用 XMLListCollection 属性设置此 SubNavBar 自定义组件并将其绑定到组件中的控件?
谢谢!