지금 만들고 있는 빌더에서 파일을 추가할 때 폴더 내의 파일을 리스팅하고자 한다..
뭐 간단하겠지만.. 그 중 이미지 파일만 추려내서 가져오려고..
private function dragDrop(e:NativeDragEvent) : void
{
var typeArray:Array = ["jpg", "JPG", "jpeg", "JPEG", "gif", "GIF", "png", "PNG", "bmp", "BMP"];
var files:Array = e.clipboard.getData( ClipboardFormats.FILE_LIST_FORMAT ) as Array;
var newRenderers:Array = [];
for(var i:int=0; i<files.length; i++)
{
var a:String = files[i].url;
var indexNum:Number = a.indexOf("."); // 확장자가 있는지 없는지를 검색한다
if(indexNum > 0) // 확장자가 있다면..
{
addItem(files[i].url);
}
else // 확장자가 없다면.. 즉, 폴더라면..
{
var dataFile:File = new File(a);
dataFile.getDirectoryListingAsync();
var myArray:Array = dataFile.getDirectoryListing();
for(var h:int=0; h<dataFile.getDirectoryListing().length; h++)
{
addItem(myArray[h].url);
}
}
function addItem(data:String) : void
{
var url:String = data;
var target:String = data.substr(-3);
var cnt:Number = typeArray.length;
for(var i:int=0; i<cnt; i++)
{
if(target == typeArray[i])
{
var r:IUIComponent = newRenderers[i] = _itemRendererFactory.newInstance();
IDataRenderer(r).data = data;
addChild(DisplayObject(r));
_items.splice(_dragTargetIdx,0, data);
renderers.splice(_dragTargetIdx,0,r);
} // 이부분은 따로 사용하는 부분인지라.. 참고할 내용은 아니오..ㅡㅡ; 이넘을 이용해서 file 을 추가합니다~
}
}
}
{
var typeArray:Array = ["jpg", "JPG", "jpeg", "JPEG", "gif", "GIF", "png", "PNG", "bmp", "BMP"];
var files:Array = e.clipboard.getData( ClipboardFormats.FILE_LIST_FORMAT ) as Array;
var newRenderers:Array = [];
for(var i:int=0; i<files.length; i++)
{
var a:String = files[i].url;
var indexNum:Number = a.indexOf("."); // 확장자가 있는지 없는지를 검색한다
if(indexNum > 0) // 확장자가 있다면..
{
addItem(files[i].url);
}
else // 확장자가 없다면.. 즉, 폴더라면..
{
var dataFile:File = new File(a);
dataFile.getDirectoryListingAsync();
var myArray:Array = dataFile.getDirectoryListing();
for(var h:int=0; h<dataFile.getDirectoryListing().length; h++)
{
addItem(myArray[h].url);
}
}
function addItem(data:String) : void
{
var url:String = data;
var target:String = data.substr(-3);
var cnt:Number = typeArray.length;
for(var i:int=0; i<cnt; i++)
{
if(target == typeArray[i])
{
var r:IUIComponent = newRenderers[i] = _itemRendererFactory.newInstance();
IDataRenderer(r).data = data;
addChild(DisplayObject(r));
_items.splice(_dragTargetIdx,0, data);
renderers.splice(_dragTargetIdx,0,r);
} // 이부분은 따로 사용하는 부분인지라.. 참고할 내용은 아니오..ㅡㅡ; 이넘을 이용해서 file 을 추가합니다~
}
}
}
사용자가 직접 폴더를 열어서 사진만 골라다가 넣게 할 수 있겠지만..
그거.. 사용자 입장에선 은근히 귀찮거든..;
폴더로 넣으면 자동으로 하게해주고 싶어서;;






댓글을 달아 주세요