За последние несколько недель я работал над виджетом TreeView
и придумал базовую структуру.Теперь он доступен в pub для использования.Работать над ним достаточно легко, если вы действительно знаете, как это сделать.Я должен признать, что документация никогда не была моей сильной стороной, но если у кого-то есть какие-то проблемы с этим, просто добавьте проблему на странице Github .
Любые предложения по улучшению проектатакже приветствуются.
Пример кода
Предположим, что это структура каталогов, которую мы хотим реализовать с помощью TreeView
widget
Desktop
|-- documents
| |-- Resume.docx
| |-- Billing-Info.docx
|-- MeetingReport.xls
|-- MeetingReport.pdf
|-- Demo.zip
В этом примере
- Resume.docx и Billing-Info.docx являются
Child
виджетами с документами в качестве Parent
. - документы , MeetingReport.xls , MeetingReport.xls и Demo.zip являются
Child
виджетами с Desktop как виджет Parent
.
var treeView = TreeView(
parentList: [
Parent(
parent: Text('Desktop'),
childList: ChildList(
children: [
Parent(
parent: Text('documents'),
childList: ChildList(
children: [
Text('Resume.docx'),
Text('Billing-Info.docx'),
],
),
),
Text('MeetingReport.xls'),
Text('MeetingReport.pdf'),
Text('Demo.zip'),
],
),
),
],
);
Это не создаст ничего фантастического.Но вместо всех виджетов Text
вы можете передать любой сложный виджет, и он все равно будет работать.
Снимок экрана приложения, использующего TreeView