Вот мой код, базовое древовидное представление для списка каталогов в API jviewfx listview, немного измененное для моих нужд.
def home_dir = System.getProperty("user.home");
def dir = new File("{home_dir}/Android_Surgeon/Projects");
var projectTree = TreeView {
root: TreeItem {
data: dir
expanded:false
isLeaf: isLeaf
createChildren: createChildren;
}
showRoot: false
}
function createChildren(item:TreeItemBase):TreeItemBase[] {
var file = item.data as File;
if (file.isDirectory()) {
return for (f in file.listFiles()) {
TreeItem {
data: f
createChildren: createChildren;
isLeaf: isLeaf;
}
}
}
return [];
}
function isLeaf(item:TreeItemBase):Boolean {
def file = item.data as File;
return file.isFile();
}
Я довольно новичок в программировании, я не могу понять, как получить имена массива java.io.file для цикла в функции createchildren.когда этот код запускается, он перечисляет абсолютный путь каждого элемента в древовидной структуре, делает его уродливым и трудным для чтения.Альтернативный вариант, который я бы использовал, - как получить имя моего файла def dir = new ("{home_dir} / Android_Surgeon / Projects"), а затем перейти к подпапкам и файлам с абсолютным путем.Первый вариант является предпочтительным.Неделю пытался сам, устал и нуждался в помощи !!!Спасибо ...