Tengo que llenar los valores de un PopUpMenuButton mediante un xml que tengo definido y consigo hacerlo metiendo el xml dentro del aplication, pero no lo consigo si lo saco a un xml externo, no se muy bien como hacer la llamada, ya que tampoco entiendo mucho xml.
Aquí tenéis el código que funciona:
Código:
He probado a scar el xml fuera pero algo hago mal al llamarlo, aquí os pongo el código que tengo actualmente, aunque después de tantas pruebas no se si es lo más lógico que he hecho hasta ahora:<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:class="action.*"> <class:EventoMenu id="eventomenu"/> <mx:XMLList id="menuarchivo"> <node label="Nuevo"> <node label="Correo"/> <node label="Carpeta"/> </node> <node label="Salir"/> </mx:XMLList> <mx:XMLList id="menueditar"> <node label="Cortar"/> <node label="Copiar"/> </mx:XMLList> <mx:ApplicationControlBar x="36.5" y="36" width="228.95" height="33.030304"> <mx:PopUpMenuButton label="A" itemClick="eventomenu.eventoarchivo(event)" dataProvider="{menuarchivo}" labelField="@label" width="46.590908" height="22.045454" cornerRadius="8"/> <mx:PopUpMenuButton label="E" itemClick="eventomenu.eventoeditar(event)" dataProvider="{menueditar}" labelField="@label" width="46.590908" height="22.045454" cornerRadius="8"/> </mx:ApplicationControlBar> </mx:Application>
Código:
Y aquí el código xml, menus.xml que esta en la carpeta xml, dentro de src<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:class="action.*"> <mx:HTTPService id="menu" url="xml/menus.xml"/> <class:EventoMenu id="eventomenu"/> <mx:ApplicationControlBar x="36.5" y="36" width="228.95" height="33.030304"> <mx:PopUpMenuButton label="A" itemClick="eventomenu.eventoarchivo(event)" dataProvider="{menu.lastResult.menus.menuarchivo}" labelField="@label" width="46.590908" height="22.045454" cornerRadius="8"/> <mx:PopUpMenuButton label="E" itemClick="eventomenu.eventoeditar(event)" dataProvider="{menu.lastResult.mnus.menueditar}" labelField="@label" width="46.590908" height="22.045454" cornerRadius="8"/> </mx:ApplicationControlBar> </mx:Application>
Código:
Gracias todos! <?xml version="1.0" encoding="UTF-8"?> <menus> <mx:XML id="menuarchivo"> <node label="Nuevo"> <node label="Correo"/> <node label="Carpeta"/> <node label="Cuenta"/> </node> <node label="Guardar"/> <node label="Recibir"/> <node label="Salir"/> </mx:XML> <mx:XML id="menueditar"> <node label="Cortar"/> <node label="Copiar"/> <node label="Pegar"/> <node label="Borrar carpeta"/> <node label="Buscar"/> </mx:XML> </menus>