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();
}
}
}