2010-07-03 33 views
0

我想创建一个菜单栏,其中包含以下内容:文件,数据库,导航,窗口。但是,我收到一个我不明白的错误:Could not resolve <mx:XMLList> to a component implementation。任何人都可以向我解释这个错误吗?我的代码如下: `Flex错误:无法解析到组件实现

<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搜索了一下,发现这产生此错误信息了很多问题。他们中没有一个似乎适合我的情况。什么时候产生这个错误?

回答

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处理函数可以更改为XMLList

var myList : XMLList = topLevelMenu.menuitem 

这个代码写在浏览器和未经考验这一点。

相关问题