Jsfl—更新资源(library.updateItem())
http://uh.9ria.com/space.php?uid=31118&do=blog&id=2591 项目越做越大,更新fla的图片资源,就会成为一件十分麻烦的事。一个个文件打开,一张张图片去替换,不用做,想想就害怕。 如何来解决这个烦人的体力活,曾经困扰了我很长时间,每次游戏更换UI的时候,进度总是卡在flash上。直到在某一天我发现了updateItem这个强大的方法,可以叫所有的这一切都变得简单。 ???????? 思路: 遍历fla文件的库,查找类型为“bitmap”的项,对其执行updateItem方法,这样一个fla文件的图片资源就替换完毕。但有一个大的前提,就是新的图片资源要同该fla文件图片资源导入路径一致才行,也就说要对你图片资源进行统一的存放,不能只要fla??????? 源文件,图片资源就随变处理了。 ? 详细代码: var folderURI = "file:///F|/Client/flash" ; updateBitmap(folderURI); ? function updateBitmap(folderURI) { ???????? var fileList; ???????? var fileMask = "*.fla" ???????? ???????? fileList = FLfile.listFolder(folderURI+ "/" + fileMask,"files"); ???????? if(fileList != "") ???????? { ?????????????????? for (key in fileList) ?????????????????? { ??????????????????????????? fl.openDocument(folderURI + "/" + fileList[key]);????????????????????? ??????????????????????????? var lib = fl.getDocumentDOM().library; ??????????????????????????? var items = lib.items ? ??????????????????????????? for(var i in items) ??????????????????????????? { ???????????????????????????????????? if(items[i].itemType == "bitmap") ???????????????????????????????????? { ?????????????????????????????????????????????? lib.updateItem(items[i].name); ???????????????????????????????????? } ??????????????????????????? } ??????????????????????????? ??????????????????????????? //保存更新成果 ??????????????????????????? fl.getDocumentDOM().save(true); ??????????????????????????? fl.getDocumentDOM().close(); ?????????????????? } ???????? } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |