我需要从移动安卓的SD卡中创建的应用程序目录中的文件夹中加载图像
这适用于PC,但不适用于移动版
有些解决方案吗?
var imagesFin:File = File.applicationStorageDirectory.resolvePath("appImages/");
var files:Array = imagesFin.getDirectoryListing();
for (var i:uint = 0; i < files.length; i++){
var picLoader = new Loader();
picLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadPicture);
picLoader.load(new URLRequest(files[i].nativePath));
}
function loadPicture(event:Event):void {
var imgAtual = event.target.content;
ContainerImagesList.addChild(imgAtual);
}
答案 0 :(得分:1)
这项工作对我来说:
var bytes:ByteArray = new ByteArray();
var myFileStream:FileStream = new FileStream();
var myFile:File = File.documentsDirectory.resolvePath(YOUR_PATH);
myFileStream.addEventListener(Event.COMPLETE, fileCompleteHandler)
myFileStream.openAsync(myFile, FileMode.READ);
function fileCompleteHandler(event:Event):void
{
myFileStream.readBytes(bytes);
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
loader.loadBytes(bytes);
function imageLoaded(e:Event):void
{
addChild(Bitmap(loader.content));
myFileStream.removeEventListener(Event.COMPLETE, fileCompleteHandler);
myFileStream.close();
}
}
干杯!
答案 1 :(得分:0)
在iOS中,我从不使用resolvePath。我只是使用像“images / photo.jpg”这样的相对网址,它可以在任何iOS设备上完美运行。
您也可以使用URL方案代替resolvePath。这是一个更简单的“app:/images/photo.jpg”或“app-storage:/settings / prefs.xml”。
http://help.adobe.com/en_US/as3/dev/WS5b3ccc516d4fbf351e63e3d118666ade46-7fe4.html
这是我在图像文件缓存中获取所有图像的方法
var imageFolder:File = new File("app:/img");
var getfiles:Array = imageFolder.getDirectoryListing();