加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flex embed XML and Icon

发布时间:2020-12-15 03:35:17 所属栏目:百科 来源:网络整理
导读:在平日的FLEX开发中,我们经常会遇到各种XML和Icon 内嵌,如何方便快速的管理这些文件成为提高开发效率的要点。 最近在做flex右键菜单时遇到的麻烦,下面将近期的经验总结在此,备忘。 ? 首先是XML 的内嵌(此处的mimeType只能指定为二进制) [Embed(source=

在平日的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);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读