egret eui.list 刷新中eui怎么获取exml中的属性并修改

的exml文件
有时候想要获取exml 文件中某个的宽高, 可能会获取到0, 这个是因为实际上在exml 文件中根本没有赋值, 自己赋一下值就可以了. 别看那里有个默认的值, 这个实际上在exml 文件中是没有写入进去的[{"term_id":"136","name":"\u","slug":"","taxonomy":"article","description":"","parent":"134","count":"0","path":"0-19-134-136","seo_title":"","seo_keywords":"","seo_description":"","list_tpl":"list","one_tpl":"doc_article","listorder":"0","status":"1","link":"666","isFolder":"true","text":"\u","tooltip":"","children":[{"tid":"666","object_id":"8098","term_id":"136","listorder":"1","status":"1","text":"EUI \u65b0\u\u7b80\u4ecb","ajax_href":"\/cn\/docs\/ajax_post\/tid\/666\/pid\/8098\/term_id\/136","url_href":"\/cn\/docs\/page\/666","post_is_md":"true"},{"tid":"518","object_id":"3723","term_id":"136","listorder":"2","status":"1","text":"EUI \u7b80\u4ecb","ajax_href":"\/cn\/docs\/ajax_post\/tid\/518\/pid\/3723\/term_id\/136","url_href":"\/cn\/docs\/page\/518","post_is_md":"true"}]},{"term_id":"137","name":"\u5feb\u901f\u","slug":"","taxonomy":"article","description":"","parent":"134","count":"0","path":"0-19-134-137","seo_title":"","seo_keywords":"","seo_description":"","list_tpl":"list","one_tpl":"doc_article","listorder":"2","status":"1","link":"517","isFolder":"true","text":"\u5feb\u901f\u","tooltip":"","children":[{"tid":"517","object_id":"3722","term_id":"137","listorder":"0","status":"1","text":"EUI \u5feb\u901f\u","ajax_href":"\/cn\/docs\/ajax_post\/tid\/517\/pid\/3722\/term_id\/137","url_href":"\/cn\/docs\/page\/517","post_is_md":"true"}]},{"term_id":"135","name":"EXML","slug":"","taxonomy":"article","description":"","parent":"134","count":"0","path":"0-19-134-135","seo_title":"","seo_keywords":"","seo_description":"","list_tpl":"list","one_tpl":"doc_article","listorder":"3","status":"1","link":"504","isFolder":"true","text":"EXML","tooltip":"","children":[{"tid":"504","object_id":"3155","term_id":"135","listorder":"10","status":"1","text":"\u\u4f7f\u7528EXML","ajax_href":"\/cn\/docs\/ajax_post\/tid\/504\/pid\/3155\/term_id\/135","url_href":"\/cn\/docs\/page\/504","post_is_md":"true"},{"tid":"505","object_id":"3156","term_id":"135","listorder":"20","status":"1","text":"EXML\u57fa\u672c\u8bed\u6cd5(\u4e00)","ajax_href":"\/cn\/docs\/ajax_post\/tid\/505\/pid\/3156\/term_id\/135","url_href":"\/cn\/docs\/page\/505","post_is_md":"true"},{"tid":"506","object_id":"3571","term_id":"135","listorder":"30","status":"1","text":"EXML\u57fa\u672c\u8bed\u6cd5(\u4e8c)","ajax_href":"\/cn\/docs\/ajax_post\/tid\/506\/pid\/3571\/term_id\/135","url_href":"\/cn\/docs\/page\/506","post_is_md":"true"},{"tid":"507","object_id":"3712","term_id":"135","listorder":"60","status":"1","text":"\u542f\u7528EXML\u8bed\u6cd5\u63d0\u793a","ajax_href":"\/cn\/docs\/ajax_post\/tid\/507\/pid\/3712\/term_id\/135","url_href":"\/cn\/docs\/page\/507","post_is_md":"true"}]},{"term_id":"138","name":"\u76ae\u80a4","slug":"","taxonomy":"article","description":"","parent":"134","count":"0","path":"0-19-134-138","seo_title":"","seo_keywords":"","seo_description":"","list_tpl":"list","one_tpl":"doc_article","listorder":"4","status":"1","link":"508","isFolder":"true","text":"\u76ae\u80a4","tooltip":"","children":[{"tid":"508","object_id":"3713","term_id":"138","listorder":"0","status":"1","text":"\u76ae\u80a4\u5206\u79bb\u673a\u5236","ajax_href":"\/cn\/docs\/ajax_post\/tid\/508\/pid\/3713\/term_id\/138","url_href":"\/cn\/docs\/page\/508","post_is_md":"true"},{"tid":"509","object_id":"3714","term_id":"138","listorder":"0","status":"1","text":"\u76ae\u80a4\u90e8\u4ef6","ajax_href":"\/cn\/docs\/ajax_post\/tid\/509\/pid\/3714\/term_id\/138","url_href":"\/cn\/docs\/page\/509","post_is_md":"true"},{"tid":"510","object_id":"3715","term_id":"138","listorder":"0","status":"1","text":"\u89c6\u56fe\u72b6\u6001","ajax_href":"\/cn\/docs\/ajax_post\/tid\/510\/pid\/3715\/term_id\/138","url_href":"\/cn\/docs\/page\/510","post_is_md":"true"},{"tid":"511","object_id":"3716","term_id":"138","listorder":"0","status":"1","text":"\u914d\u7f6e\u4e3b\u9898","ajax_href":"\/cn\/docs\/ajax_post\/tid\/511\/pid\/3716\/term_id\/138","url_href":"\/cn\/docs\/page\/511","post_is_md":"true"},{"tid":"667","object_id":"8563","term_id":"138","listorder":"0","status":"1","text":"EUI \u4e2d\u4f7f\u7528\u81ea\u5b9a\u4e49\u76ae\u80a4\u76842\u79cd\u65b9\u5f0f","ajax_href":"\/cn\/docs\/ajax_post\/tid\/667\/pid\/8563\/term_id\/138","url_href":"\/cn\/docs\/page\/667","post_is_md":"true"},{"tid":"784","object_id":"12500","term_id":"138","listorder":"0","status":"1","text":"\u81ea\u5b9a\u4e49 EXML \u\u52a0\u8f7d\u6839\u76ee\u5f55","ajax_href":"\/cn\/docs\/ajax_post\/tid\/784\/pid\/12500\/term_id\/138","url_href":"\/cn\/docs\/page\/784","post_is_md":"true"}]},{"term_id":"139","name":"\u81ea\u52a8\u5e03\u5c40","slug":"","taxonomy":"article","description":"","parent":"134","count":"0","path":"0-19-134-139","seo_title":"","seo_keywords":"","seo_description":"","list_tpl":"list","one_tpl":"doc_article","listorder":"5","status":"1","link":"512","isFolder":"true","text":"\u81ea\u52a8\u5e03\u5c40","tooltip":"","children":[{"tid":"512","object_id":"3717","term_id":"139","listorder":"0","status":"1","text":"\u5c4f\u5e55\ud","ajax_href":"\/cn\/docs\/ajax_post\/tid\/512\/pid\/3717\/term_id\/139","url_href":"\/cn\/docs\/page\/512","post_is_md":"true"},{"tid":"513","object_id":"3718","term_id":"139","listorder":"0","status":"1","text":"\u\u9a8c\u8bc1\u673a\u5236","ajax_href":"\/cn\/docs\/ajax_post\/tid\/513\/pid\/3718\/term_id\/139","url_href":"\/cn\/docs\/page\/513","post_is_md":"true"},{"tid":"514","object_id":"3719","term_id":"139","listorder":"0","status":"1","text":"\u81ea\u52a8\u5e03\u5c40\u539f\u7406","ajax_href":"\/cn\/docs\/ajax_post\/tid\/514\/pid\/3719\/term_id\/139","url_href":"\/cn\/docs\/page\/514","post_is_md":"true"},{"tid":"515","object_id":"3720","term_id":"139","listorder":"0","status":"1","text":"\u89e3\u51b3\u5f02\u6b65\u95ee\u9898","ajax_href":"\/cn\/docs\/ajax_post\/tid\/515\/pid\/3720\/term_id\/139","url_href":"\/cn\/docs\/page\/515","post_is_md":"true"},{"tid":"516","object_id":"3721","term_id":"139","listorder":"0","status":"1","text":"\u81ea\u52a8\u5e03\u5c40\u8c03\u8bd5","ajax_href":"\/cn\/docs\/ajax_post\/tid\/516\/pid\/3721\/term_id\/139","url_href":"\/cn\/docs\/page\/516","post_is_md":"true"}]},{"term_id":"140","name":"\u4f7f\u\u5c40\u7c7b","slug":"","taxonomy":"article","description":"","parent":"134","count":"0","path":"0-19-134-140","seo_title":"","seo_keywords":"","seo_description":"","list_tpl":"list","one_tpl":"doc_article","listorder":"6","status":"1","link":"521","isFolder":"true","text":"\u4f7f\u\u5c40\u7c7b","tooltip":"","children":[{"tid":"521","object_id":"3726","term_id":"140","listorder":"0","status":"1","text":"\u57fa\u672c\u5e03\u5c40","ajax_href":"\/cn\/docs\/ajax_post\/tid\/521\/pid\/3726\/term_id\/140","url_href":"\/cn\/docs\/page\/521","post_is_md":"true"},{"tid":"522","object_id":"3727","term_id":"140","listorder":"0","status":"1","text":"\u6c34\u5e73\u5e03\u5c40","ajax_href":"\/cn\/docs\/ajax_post\/tid\/522\/pid\/3727\/term_id\/140","url_href":"\/cn\/docs\/page\/522","post_is_md":"true"},{"tid":"523","object_id":"3728","term_id":"140","listorder":"0","status":"1","text":"\u\u5e03\u5c40","ajax_href":"\/cn\/docs\/ajax_post\/tid\/523\/pid\/3728\/term_id\/140","url_href":"\/cn\/docs\/page\/523","post_is_md":"true"},{"tid":"524","object_id":"3729","term_id":"140","listorder":"0","status":"1","text":" \u7f51\u683c\u5e03\u5c40","ajax_href":"\/cn\/docs\/ajax_post\/tid\/524\/pid\/3729\/term_id\/140","url_href":"\/cn\/docs\/page\/524","post_is_md":"true"},{"tid":"525","object_id":"3730","term_id":"140","listorder":"0","status":"1","text":"\u81ea\u5b9a\u4e49\u5e03\u5c40","ajax_href":"\/cn\/docs\/ajax_post\/tid\/525\/pid\/3730\/term_id\/140","url_href":"\/cn\/docs\/page\/525","post_is_md":"true"}]},{"term_id":"141","name":"\u63a7\u4ef6","slug":"","taxonomy":"article","description":"","parent":"134","count":"0","path":"0-19-134-141","seo_title":"","seo_keywords":"","seo_description":"","list_tpl":"list","one_tpl":"doc_article","listorder":"7","status":"1","link":"530","isFolder":"true","text":"\u63a7\u4ef6","tooltip":"","children":[{"tid":"530","object_id":"3735","term_id":"141","listorder":"0","status":"1","text":"\uc","ajax_href":"\/cn\/docs\/ajax_post\/tid\/530\/pid\/3735\/term_id\/141","url_href":"\/cn\/docs\/page\/530","post_is_md":"true"},{"tid":"531","object_id":"3736","term_id":"141","listorder":"0","status":"1","text":"\u56fe\u7247","ajax_href":"\/cn\/docs\/ajax_post\/tid\/531\/pid\/3736\/term_id\/141","url_href":"\/cn\/docs\/page\/531","post_is_md":"true"},{"tid":"532","object_id":"3737","term_id":"141","listorder":"0","status":"1","text":"\u6309\u94ae","ajax_href":"\/cn\/docs\/ajax_post\/tid\/532\/pid\/3737\/term_id\/141","url_href":"\/cn\/docs\/page\/532","post_is_md":"true"},{"tid":"533","object_id":"3738","term_id":"141","listorder":"0","status":"1","text":"\u590d\u","ajax_href":"\/cn\/docs\/ajax_post\/tid\/533\/pid\/3738\/term_id\/141","url_href":"\/cn\/docs\/page\/533","post_is_md":"true"},{"tid":"534","object_id":"3739","term_id":"141","listorder":"0","status":"1","text":"\u\u6309\u94ae","ajax_href":"\/cn\/docs\/ajax_post\/tid\/534\/pid\/3739\/term_id\/141","url_href":"\/cn\/docs\/page\/534","post_is_md":"true"},{"tid":"535","object_id":"3740","term_id":"141","listorder":"0","status":"1","text":"\u72b6\u\u\u94ae","ajax_href":"\/cn\/docs\/ajax_post\/tid\/535\/pid\/3740\/term_id\/141","url_href":"\/cn\/docs\/page\/535","post_is_md":"true"},{"tid":"536","object_id":"3741","term_id":"141","listorder":"0","status":"1","text":"\u6ed1\u52a8\u\u5668","ajax_href":"\/cn\/docs\/ajax_post\/tid\/536\/pid\/3741\/term_id\/141","url_href":"\/cn\/docs\/page\/536","post_is_md":"true"},{"tid":"537","object_id":"3742","term_id":"141","listorder":"0","status":"1","text":"\u8fdb\u5ea6\u6761","ajax_href":"\/cn\/docs\/ajax_post\/tid\/537\/pid\/3742\/term_id\/141","url_href":"\/cn\/docs\/page\/537","post_is_md":"true"},{"tid":"538","object_id":"3743","term_id":"141","listorder":"0","status":"1","text":"\u8f93\u\u672c","ajax_href":"\/cn\/docs\/ajax_post\/tid\/538\/pid\/3743\/term_id\/141","url_href":"\/cn\/docs\/page\/538","post_is_md":"true"}]},{"term_id":"142","name":"\u5bb9\u5668","slug":"","taxonomy":"article","description":"","parent":"134","count":"0","path":"0-19-134-142","seo_title":"","seo_keywords":"","seo_description":"","list_tpl":"list","one_tpl":"doc_article","listorder":"8","status":"1","link":"608","isFolder":"true","text":"\u5bb9\u5668","tooltip":"","children":[{"tid":"608","object_id":"5542","term_id":"142","listorder":"0","status":"1","text":"\u7b80\u\u5668( Group )","ajax_href":"\/cn\/docs\/ajax_post\/tid\/608\/pid\/5542\/term_id\/142","url_href":"\/cn\/docs\/page\/608","post_is_md":"true"},{"tid":"609","object_id":"5543","term_id":"142","listorder":"0","status":"1","text":"\u5c42\u53e0\u5bb9\u5668","ajax_href":"\/cn\/docs\/ajax_post\/tid\/609\/pid\/5543\/term_id\/142","url_href":"\/cn\/docs\/page\/609","post_is_md":"true"},{"tid":"610","object_id":"5544","term_id":"142","listorder":"0","status":"1","text":"\uf\u5bb9\u5668","ajax_href":"\/cn\/docs\/ajax_post\/tid\/610\/pid\/5544\/term_id\/142","url_href":"\/cn\/docs\/page\/610","post_is_md":"true"},{"tid":"611","object_id":"5545","term_id":"142","listorder":"0","status":"1","text":"\u6eda\u52a8\u63a7\u\u5668","ajax_href":"\/cn\/docs\/ajax_post\/tid\/611\/pid\/5545\/term_id\/142","url_href":"\/cn\/docs\/page\/611","post_is_md":"true"}]},{"term_id":"144","name":"\ue\u96c6\u5408","slug":"","taxonomy":"article","description":"","parent":"134","count":"0","path":"0-19-134-144","seo_title":"","seo_keywords":"","seo_description":"","list_tpl":"list","one_tpl":"doc_article","listorder":"9","status":"1","link":"527","isFolder":"true","text":"\ue\u96c6\u5408","tooltip":"","children":[{"tid":"527","object_id":"3732","term_id":"144","listorder":"0","status":"1","text":"\ue\u5bb9\u5668","ajax_href":"\/cn\/docs\/ajax_post\/tid\/527\/pid\/3732\/term_id\/144","url_href":"\/cn\/docs\/page\/527","post_is_md":"true"},{"tid":"528","object_id":"3733","term_id":"144","listorder":"0","status":"1","text":"\u\u96c6\u5408","ajax_href":"\/cn\/docs\/ajax_post\/tid\/528\/pid\/3733\/term_id\/144","url_href":"\/cn\/docs\/page\/528","post_is_md":"true"},{"tid":"641","object_id":"7211","term_id":"144","listorder":"0","status":"1","text":"\u","ajax_href":"\/cn\/docs\/ajax_post\/tid\/641\/pid\/7211\/term_id\/144","url_href":"\/cn\/docs\/page\/641","post_is_md":"true"},{"tid":"642","object_id":"7212","term_id":"144","listorder":"0","status":"1","text":"\u\u5361","ajax_href":"\/cn\/docs\/ajax_post\/tid\/642\/pid\/7212\/term_id\/144","url_href":"\/cn\/docs\/page\/642","post_is_md":"true"},{"tid":"645","object_id":"7214","term_id":"144","listorder":"0","status":"1","text":"\u81ea\u5b9a\u4e49\u\u793a\u5668","ajax_href":"\/cn\/docs\/ajax_post\/tid\/645\/pid\/7214\/term_id\/144","url_href":"\/cn\/docs\/page\/645","post_is_md":"true"}]},{"term_id":"203","name":"\u8fdb\u\u5de7","slug":"","taxonomy":"article","description":"EUI \u4e2d\u9879\u76ee\u7684\u8fdb\u\u5de7\uf\u","parent":"134","count":"0","path":"0-19-134-203","seo_title":"","seo_keywords":"","seo_description":"","list_tpl":"list","one_tpl":"doc_article","listorder":"10","status":"1","link":"","isFolder":"true","text":"\u8fdb\u\u5de7","tooltip":"EUI \u4e2d\u9879\u76ee\u7684\u8fdb\u\u5de7\uf\u","children":[{"tid":"924","object_id":"14111","term_id":"203","listorder":"0","status":"1","text":"\u5728EXML\u4e2d\u4f7f\u7528\u81ea\u5b9a\u4e49\u7ec4\u4ef6","ajax_href":"\/cn\/docs\/ajax_post\/tid\/924\/pid\/14111\/term_id\/203","url_href":"\/cn\/docs\/page\/924","post_is_md":"true"}]},{"term_id":"166","name":"\u65e7\u7248GUI\ub\u","slug":"","taxonomy":"article","description":"\u8fd9\u91cc\u662f\u65e7\u7248GUI\u\u7a0b\u\u","parent":"134","count":"0","path":"0-19-134-166","seo_title":"","seo_keywords":"","seo_description":"","list_tpl":"list","one_tpl":"doc_article","listorder":"1000","status":"1","link":"646","isFolder":"true","text":"\u65e7\u7248GUI\ub\u","tooltip":"\u8fd9\u91cc\u662f\u65e7\u7248GUI\u\u7a0b\u\u","children":[{"tid":"646","object_id":"7215","term_id":"166","listorder":"0","status":"1","text":"\u65e7\u7248GUI\ub\u","ajax_href":"\/cn\/docs\/ajax_post\/tid\/646\/pid\/7215\/term_id\/166","url_href":"\/cn\/docs\/page\/646","post_is_md":"true"}]}]
EUI 中使用自定义皮肤的2种方式
by zhangyu
&&&&&&&&&&&
阅读(11869)
我可能需要关注的开源项目? >
我可以选择哪些技术支持? >
我可以选择哪些培训方式?>
过去的内容?>
(已满) (已满) (已满) (已满) (未满)
Copyright (C) 2015 Egret.com. 京ICP备号 京公网安备02EUI 中使用自定义皮肤的2种方式
by zhangyu
比如我们有一个自定义的皮肤,名称为testSkin.exml,有两种方式使用它 &?xml version=&1.0& encoding=&utf-8&?& &e:Skin class=&mySkin.TestSkin& xmlns:e=&http://ns.egret.com/eui&& &e:DataGroup& &e:itemRendererSkinName& &e:Skin& &e:Label textColor=&0xfd0000& text=&{data.label}&/& &/e:Skin& &/e:itemRendererSkinName& &e:ArrayCollection& &e:Array& &e:Object label=&item1&/& &e:Object label=&item2&/& &e:Object label=&item3&/& &/e:Array& &/e:ArrayCollection& &/e:DataGroup& &/e:Skin&
方式1 加载文件class TestSkin extends eui.Component {
constructor() {
this.addEventListener(eui.UIEvent.COMPLETE,this.onComplete,this);
this.skinName = &resource/testSkin.exml&;
protected createChildren() {
super.createChildren();
console.log(&createChildren&)
private onComplete():void{
console.log(&onComplete&);
直接把skinName设置为exml文件的路径。这种方式要注意的是,在 createChildren 的时候,是获取不到内部组件的,因为此时 exml 文件还没有加载完成,要通过监听 eui.UIEvent.COMPLETE 这个事件获取组件创建完成的消息。像上面这个例子,console 会先输出 createChildren 再输出 onComplete 需要注意的是:如果已经在主题中加载了 EXML 文件,会先输出 onComplete 再输出 createChildren. 方式2 通过Theme主题管理使用egret create euiDemo --type eui
创建一个 eui 项目,里面默认就会有主题管理解析的示例。具体的文档在这里: 你会发现,方式1的代码还可以正常使用,但是console 会先输出 onComplete 再输出 createChildren,和之前相反。这是因为主题已经加载过这个 exml 文件了,所以不需要重新加载,直接就创建出来了。 另外因为我们在 exml 中定义了 class=”mySkin.TestSkin”,所以还可以像下面这样使用 class TestSkin extends eui.Component {
constructor() {
this.skinName = &mySkin.TestSkin&;
&&&&&&&&&&&
阅读(11869)
我可能需要关注的开源项目? >
我可以选择哪些技术支持? >
我可以选择哪些培训方式?>
过去的内容?>
(已满) (已满) (已满) (已满) (未满)
Copyright (C) 2015 Egret.com. 京ICP备号 京公网安备02egret中eui怎么获取exml中的属性并修改_百度知道
egret中eui怎么获取exml中的属性并修改
我有更好的答案
在EUI中,EXML是可以运行时加载解析的。您可以把它当做标准的文本文件加载后解析,或者直接将exml文本内容嵌入代码中解析。在下一节我们将详细讲解EXML的语法,这节我们先来看一下如何在代码中使用EXML文件。
采纳率:95%
来自团队:
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。舞动的夏天
每周学一点 egret(6):抽离Exml对象id声明
今天抽了一点小时间,写了一个抽离Exml文件的工具,采用As3正则一点点调试,在网上找了一个匹配表达式开始尝试。然后一步步抽出来。
至于匹配率如何?我想还可以继续深入挖潜吧,只不过是方便自己使用。偷懒去声明这些对象,但是对于自定义的对象声明没有做出来的。只能加入类型去匹配了。这一点也不是特别难。但是整体难是这个正则每次都得去查询一下,一点点尝试。
代码如下,生成一个swf 就可以使用,其实还可以继续做成拖动文件生成的效果,官方提供这种机制还更好。还有一部分人在基础类使用一种巧妙的办法处理,不用去生成这些声明。
都是方便自己而已。
import flash.text.*;
var codeText:TextField
= new TextField();
codeText.text = "粘贴Egret代码";
codeText.width
codeText.height = 223.85;
codeText.type = TextFieldType.INPUT;
codeText.border = true;
codeText.x = 25;
codeText.y =
codeText.multiline = true;
addChild(codeText);
var resultText:TextField
= new TextField();
resultText.text = "输出结果";
resultText.width
resultText.height = 223.85;
resultText.type = TextFieldType.DYNAMIC;
resultText.border = true;
resultText.x = 25;
resultText.y =
resultText.multiline = true;
addChild(resultText);
stage.addEventListener(KeyboardEvent.KEY_DOWN,onKeyDownHandler);
function onKeyDownHandler(event:KeyboardEvent):void
if (event.keyCode == 13)
changeCode();
function changeCode():void
var codeStr:String = codeText.
var array:Array = codeStr.split("\r");
var reg:RegExp = new RegExp(" id=\"(.*?)\"","ig");
var resultStr:String = "";
for each (var str:String in array)
var space:String = str.substr(str.indexOf(":") + 1);
var startIndex:int = str.indexOf(":") + 1;
var endIndex:int = startIndex + space.indexOf(" ");
var typeStr:String = str.substring(startIndex,endIndex);
var temp:Array = str.match(reg);
if (temp && temp[0])
var idStr:String =
temp[0].replace("id=",'').replace("\"",'').replace("\"",'');
resultStr +=
"public #1:egret.gui.#2;".replace("#1",idStr).replace("#2",typeStr) + "\n";
resultText.text = resultS
最后改用Air 处理,既可以方便自己使用,又可以查看包路径 一举两得
&?xml version="1.0" encoding="utf-8"?&
&s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
width="912" height="565"
addedToStage="windowedapplication1_addedToStageHandler(event)" creationComplete="windowedapplication1_creationCompleteHandler(event)"&
&fx:Declarations&
&!-- 将非可视元素(例如服务、值对象)放在此处 --&
&/fx:Declarations&
&fx:Script&
import mx.events.DragE
import mx.events.FileE
import mx.events.FlexE
import mx.managers.DragM
protected function windowedapplication1_creationCompleteHandler(event:FlexEvent):void
fileSystemTree.addEventListener(FileEvent.FILE_CHOOSE,onSelectFile);
this.addEventListener(NativeDragEvent.NATIVE_DRAG_ENTER,onDragEnter);
this.addEventListener(NativeDragEvent.NATIVE_DRAG_DROP,onDragComplete);
var mainMenu:NativeMenu = new NativeMenu();
mainMenu.addEventListener(Event.SELECT,onSelectMenu);
var parse:NativeMenuItem = new NativeMenuItem("粘贴");
mainMenu.items = [parse];
this.contextMenu=mainM
private function onSelectMenu(event:Event):void
var array:Array = Clipboard.generalClipboard.getData(ClipboardFormats.FILE_LIST_FORMAT) as A
if(array && array.length & 0)
var file:File = array[0];
var fileStream:FileStream = new FileStream();
fileStream.open(file,FileMode.READ);
var str:String = fileStream.readMultiByte(fileStream.bytesAvailable,"utf-8");
fileStream.close();
setText(str,file);
private function onDragComplete(event:NativeDragEvent):void
var dropfiles:Array = event.clipboard.getData(ClipboardFormats.FILE_LIST_FORMAT) as A
var file:File = dropfiles[0];
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.READ);
var str:String = fileStream.readMultiByte(fileStream.bytesAvailable, "utf-8");
fileStream.close();
setText(str, file);
private function onDragEnter(event:NativeDragEvent):void
if(event.clipboard.hasFormat(ClipboardFormats.FILE_LIST_FORMAT)
event.clipboard.getData(ClipboardFormats.FILE_LIST_FORMAT)[0].nativePath.split(".")[1] == "exml")
NativeDragManager.acceptDragDrop(this);
private function
onSelectFile(event:FileEvent):void
if(event.file && event.file.isDirectory == false)
var fileStream:FileStream = new FileStream();
fileStream.open(event.file,FileMode.READ);
var str:String = fileStream.readMultiByte(fileStream.bytesAvailable,"utf-8");
fileStream.close();
setText(str,event.file);
private function setText(str:String,file:File):void
codeTextArea.text =
changeCode(str);
if(!file) return;
var url:String = file.
var startIndex:int = url.indexOf("src/")+4;
var endIndex:int = url.lastIndexOf(".");
var tempStr:String = url.substring(startIndex,endIndex);
var reg:RegExp =
new RegExp("/", "g");
tempStr = tempStr.replace(reg,".");
resultTextArea.appendText("\n\n\n对应包路径 =============
resultTextArea.appendText(tempStr);
private function changeCode(codeStr:String):void
var codeStr:String = codeS
var array:Array = codeStr.split("\n");
var reg:RegExp = new RegExp(" id=\"(.*?)\"","ig");
var resultStr:String = "";
for each (var str:String in array)
var space:String = str.substr(str.indexOf(":") + 1);
var startIndex:int = str.indexOf(":") + 1;
var endIndex:int = startIndex + space.indexOf(" ");
var typeStr:String = str.substring(startIndex,endIndex);
var temp:Array = str.match(reg);
if (temp && temp[0])
var idStr:String = String(temp[0]).replace("id=",'').replace("\"",'').replace("\"",'');
resultStr +=
"public #1:egret.gui.#2;".replace("#1",idStr).replace("#2",typeStr) + "\n";
resultTextArea.text = resultS
protected function windowedapplication1_addedToStageHandler(event:Event):void
var array:Array = Clipboard.generalClipboard.getData(ClipboardFormats.FILE_LIST_FORMAT) as A
if(array && array.length & 0)
var file:File = array[0];
var fileStream:FileStream = new FileStream();
fileStream.open(file,FileMode.READ);
var str:String = fileStream.readMultiByte(fileStream.bytesAvailable,"utf-8");
fileStream.close();
setText(str,file);
&/fx:Script&
&mx:DividedBox direction="horizontal" width="100%" height="100%"&
&mx:Panel title="目录" width="20%" height="100%" backgroundColor="0xCCCCCC"&
&mx:FileSystemTree
id="fileSystemTree" x="19" y="30" width="100%" height="100%"/&
&/mx:Panel&
&mx:Panel title="代码" width="40%" height="100%" backgroundColor="0xCCCCCC"&
&s:TextArea id="codeTextArea"
editable="false" x="283" y="30" width="100%" height="100%"/&
&/mx:Panel&
&mx:Panel title="转换代码" width="40%" height="100%" backgroundColor="0xCCCCCC"&
&s:TextArea
id="resultTextArea" fontSize="15" x="283" y="30" width="100%" height="100%"/&
&/mx:Panel&
&/mx:DividedBox&
&/s:WindowedApplication&
安装好后,我们对其进行设置快捷键,则可以快速弹出界面出来。因为我们程序写了复制粘贴的功能,所以复制exml文件也是能够生效的。
对文件进行复制,然后使用之前设置的快捷键 ctrl+shift+L 弹出窗口,这样子就可以生成我们想要的数据了。
没有更多推荐了,

我要回帖

更多关于 egret eui视频教程 的文章

 

随机推荐