Flex embed XML and Icon

在平日的FLEX开发中,我们经常会遇到各种XML和Icon 内嵌,如何方便快速的管理这些文件成为提高开发效率的要点。

最近在做flex右键菜单时遇到的麻烦,下面将近期的经验总结在此,备忘。

首先是XML 的内嵌(此处的mimeType只能指定为二进制)

[Embed(source="/assets/xml/contextmenu.xml",mimeType="application/octet-stream")]
private var MenuConfig:Class;
//读取
var bytes:ByteArray = new MenuConfig;
var menuConfig:XML = new XML(bytes.readUTFBytes(bytes.length));

还有一种是在mxml中加入,然后通过id引用

<fx:XML id="menuConfig" source="/assets/xml/contextmenu.xml"/>

下面是icon的嵌入

将需要嵌入的图标统一写在一个AS文件中,然后在主应用中加载as文件

Icons.as (注意:作用域一定要写为public,且不要加static,不要加package和class类声明,编译会报错)

[Embed("/assets/images/arcgis16/add.png")]
public var AddIcon:Class;
[Embed("/assets/images/arcgis16/FolderBlueAdd.png")]
public var AddGroupIcon:Class;
[Embed("/assets/images/arcgis16/addressAdd.png")]
public var AddAddressIcon:Class;
[Embed("/assets/images/arcgis16/sketch.png")]
public var SketchIcon:Class;
[Embed("/assets/images/arcgis16/properties.png")]
public var PropertiesIcon:Class;
[Embed("/assets/images/arcgis16/delete.png")]
public var DeleteIcon:Class;

之后在应用中引入

<fx:Script source="/assets/script/Icons.as"/>

此方法适用于Menu,MenuBar等控件的数据源配置,因为通常她们的数据源都是XML,并可配置icon属性,相当方便。

var rightClickMenu:Menu = Menu.createMenu(FlexGlobals.topLevelApplication as DisplayObjectContainer, menuConfig, false);
rightClickMenu.labelField = "@label";
//iconField一定要指定,否则图标不会生效
rightClickMenu.iconField = "@icon";
//将菜单排列紧密
rightClickMenu.variableRowHeight = true;
rightClickMenu.addEventListener(MenuEvent.ITEM_CLICK, handler);
时间: 2024-11-09 04:03:20

Flex embed XML and Icon的相关文章

flex 操作xml 实现增删改查 .

一 在介绍Flex中操作XML之前,首先简单介绍下XML中的基本术语. 元素:XML中拥有开始标签和结束标签的这一块称为“元素”    节点:把XML元素与文本结合起来统称为节点    根节点:位于整个XML文当顶端的节点    文本节点:包含文本的节点    属性:元素的组成部分,以键/值形式放在元素标签内 用一个例子来说明 view plaincopy to clipboardprint?<root_node><!--这是一个根节点也是一个元素-->            &l

flex操作XML,强力总结帖

初始化XML对象 XML对象可以代表一个XML元素.属性.注释.处理指令或文本元素.在ActionScript 3.0中我们可以直接将XML数据赋值给变量: var myXML:XML =    <order>        <item id='1'>            <menuName>burger</menuName>            <price>3.95</price>        </item>  

Flex 对Xml对象操作

一.读取.xml文件() import flash.events.Event;   import flash.net.URLLoader;   import flash.net.URLRequest; var loder:URLLoader = new URLLoader(); var req:URLRequest = new URLRequest("myxml.xml"); loder.load(req); loder.addEventListener(Event.COMPLETE,

详细介绍Flex中操作XML

一  在介绍Flex中操作XML之前,首先简单介绍下XML中的基本术语. 元素:XML中拥有开始标签和结束标签的这一块称为“元素”    节点:把XML元素与文本结合起来统称为节点    根节点:位于整个XML文当顶端的节点    文本节点:包含文本的节点    属性:元素的组成部分,以键/值形式放在元素标签内 用一个例子来说明 <root_node><!--这是一个根节点也是一个元素--> <node attribute="value"><!

【转】【Flex】#010 操作XML文件(E4X)

该教程转载来自于:http://blog.chinaunix.net/uid-14767524-id-2785506.html    [看到这边文章的位置,具体原作者未知] 经过一些排版的修改,其他内容没变.[版权属于原作者] 一  在介绍Flex中操作XML之前,首先简单介绍下XML中的基本术语. 元素:XML中拥有开始标签和结束标签的这一块称为"元素"    节点:把XML元素与文本结合起来统称为节点    根节点:位于整个XML文当顶端的节点    文本节点:包含文本的节点   

Flex开发简单工作流程设计工具

在线预览地址 http://rj.8634.com/xiaoshandong/workflowdesigner/workflowdesigner.html 源代码下载   http://files.cnblogs.com/files/ffmpeg/WorkFlowDesigner.zip 截图   源代码 WorkFlowDesigner.mxml <?xml version="1.0" encoding="utf-8"?> <mx:Applica

flex+java+blazeds 多通道好文

http://www.cnblogs.com/noam/archive/2010/08/05/1793504.html blazeds, spring3整合实现RPC服务和消息服务 环境: MyEclipse 7.5 Flash Builder 4 plugin for eclipse Tomcat 6 BlazeDS 4.0.0 springframework 3.0.3 Spring-flex整合 org.springframework.flex-1.0.3.RELEASE.jar (适用于

基于restful注解(spring4.0.2整合flex+blazeds+spring-mvc)&lt;一&gt;

摘自: http://www.blogjava.net/liuguly/archive/2014/03/10/410824.html 参考官网:1.http://livedocs.adobe.com/blazeds/1/blazeds_devguide/2.http://docs.spring.io/spring-flex/docs/1.5.2.RELEASE/reference/html/1)下载blazeds(turnkey4.0.x版本)网址:http://sourceforge.net/

Java和Flex整合报错(二)

1.错误原因 usage: java org.apache.catalina.startup.Catalina [ -config {pathname} ] [ -nonaming ] { -help | start | stop } 2014-11-13 23:15:19 org.apache.catalina.core.AprLifecycleListener init 信息: Loaded APR based Apache Tomcat Native library 1.1.24 usin