Flex错误:无法解析为组件实现

时间:2010-07-03 14:51:12

标签: flex mxml

我正在尝试使用以下项创建菜单栏:文件,数据库,导航,窗口。但是,我收到一个我不理解的错误:Could not resolve <mx:XMLList> to a component implementation。任何人都可以向我解释错误吗?我的代码如下: `

<mx:XMLList id="topLevelMenu">
     <menuitem label="File" />
     <menuitem label="Database"/>
     <menuitem label="Navigate"/>
     <menuitem label="Window" />
 </mx:XMLList>

 <mx:MenuBar width="100%" height="20" labelField="@label" id="mainMenuBar" dataProvider="{topLevelMenu}" />`

我用Google搜索并发现了很多产生此错误消息的问题。他们似乎都不适合我的情况。什么时候产生这个错误?

1 个答案:

答案 0 :(得分:2)

错误基本上意味着编译器无法找到组件。

在这种情况下,XMLList不在mx名称空间中。您没有显示导入命名空间的代码,但我假设您使用的是默认值。

我建议在ActionScript中创建XMLList,而不是MXML。我相信这样的事情应该有效:

public var topLevelMenu : XML =  <menuItems>
<menuitem label="File" />
     <menuitem label="Database"/>
     <menuitem label="Navigate"/>
     <menuitem label="Window" />
</menuItems>; 

然后在某处,也许在creationComplete Handler中,您可以将其更改为XMLList

var myList : XMLList = topLevelMenu.menuitem 

此代码是在浏览器中编写的,未经测试。