我正在尝试使用以下项创建菜单栏:文件,数据库,导航,窗口。但是,我收到一个我不理解的错误: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搜索并发现了很多产生此错误消息的问题。他们似乎都不适合我的情况。什么时候产生这个错误?
答案 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
此代码是在浏览器中编写的,未经测试。