Ошибка Flex: не удалось разрешить реализацию компонента - PullRequest
0 голосов
/ 03 июля 2010

Я пытаюсь создать строку меню со следующими элементами: Файл, База данных, Навигация, Окно. Тем не менее, я получаю ошибку, которую я не понимаю: 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}" />`

Я погуглил и нашел много проблем, которые генерируют это сообщение об ошибке. Ни один из них, казалось, не соответствовал моему случаю. Когда генерируется эта ошибка?

1 Ответ

2 голосов
/ 03 июля 2010

Ошибка означает, что компилятор не может найти компонент.

В этом случае XMLList не находится в пространстве имен mx. Вы не показали код, куда вы импортируете пространства имен, но я предполагаю, что вы используете значение по умолчанию.

Я предлагаю создать свой XMLList в ActionScript, а не в 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 

Этот код написан в браузере и не проверен.

...