Пожалуйста, дайте мне знать, как я могу перетащить каталог из окон на панель Adobe AIR. В папке есть подпапки внутри. У подпапок много файлов. Я хочу перетащить родительскую папку и выбросить ее, чтобы вся структура была загружена. Пожалуйста, помогите.Каталог перетаскивания Adobe AIR
1
A
ответ
1
Загружать папки довольно легко. Когда вы обнаруживаете падение с помощью события drop, вы получаете предоставленный wit ha список удаленных файлов. Затем вы можете определить, является ли это отброшенным файлом, и если да, то вы можете получить все файлы, перечисленные под ним (включая файлы), и если какие-либо из них являются папками, а затем перейдите дальше.
В основном, adobe air обрабатывает файлы и папки как один и тот же объект.
В случае падения поставил
var files = event.dataTransfer.getData("application/x-vnd.adobe.air.file-list");
var fileData = [];
for (var f = 0; f < files.length; f++)
{
if (files[f].isDirectory) {
//process this folder recursing through subfolders
} else {
//we have a file
}
}
Вы можете рекурсию через объект добавления файлов и файлов на сервер по мере необходимости
0
Вот полный пример. Просто вызовите метод onInit() при инициализации приложения.
private function onInit(event:FlexEvent):void
{
this.addEventListener(NativeDragEvent.NATIVE_DRAG_ENTER, onDragIn);
this.addEventListener(NativeDragEvent.NATIVE_DRAG_DROP, onDrop);
}
private function onDragIn(event : NativeDragEvent):void
{
NativeDragManager.acceptDragDrop(this);
}
private function onDrop(event : NativeDragEvent):void
{
try
{
var dropfiles:Array = event.clipboard.getData(ClipboardFormats.FILE_LIST_FORMAT) as Array;
processDroppedFiles(dropfiles);
}
catch (error : IOError)
{
trace("Error during drag-and-drop procedure.");
}
}
private function processDroppedFiles(files : Array):void
{
for each (var file:File in files)
{
if (file.isDirectory)
{
processDirectory(file);
}
else
{
processFile(file);
}
}
}
private function processDirectory(dir : File):void
{
processDroppedFiles(dir.getDirectoryListing());
}
private function processFile(file:File):void
{
trace(file);
}
Смежные вопросы
- 1. Вложение перетаскивания в Adobe AIR
- 2. Adobe AIR: Каталог приложений Windows Доступ
- 3. Adobe AIR - Несоответствия в обнаружении ли Adobe среда AIR установлена
- 4. Если Adobe Air ANE влияет или противоречит Adobe Air
- 5. Как запустить приложение adobe air без Adobe Air Player?
- 6. Наложение Adobe Air 2 на Adobe Air 17
- 7. Как поместить \ сохранить файлы в каталог приложения? (adobe air)
- 8. Как изменить каталог установки приложения adobe air application по умолчанию?
- 9. C++ Adobe Air Overlay
- 10. Adobe Air GUI Вопрос
- 11. TestComplete и Adobe Air
- 12. Adobe air http auth
- 13. Silverlight vs Adobe Air
- 14. Adobe Air для IPhone
- 15. Adobe AIR на iPhone
- 16. Серый мостик Adobe Air
- 17. Adobe AIR и iOS
- 18. Adobe AIR CopyTo
- 19. Adobe Air - FileMode.APPEND
- 20. tinymce adobe air
- 21. Adobe Air и Dropbox
- 22. ADOBE AIR ДЛЯ Android
- 23. Adobe Air: Ошибка 307
- 24. Проблема Adobe AIR Updater
- 25. Adobe Air Вопросы/Ресурсы
- 26. Что такое Adobe AIR?
- 27. DeviceOrientationEvent for Adobe Air
- 28. Adobe Air: WindowedApplication
- 29. Adobe Air и .NET
- 30. Adobe AIR, утечки памяти