Flutter:在多个列表或列之间排序、拖放
Posted
技术标签:
【中文标题】Flutter:在多个列表或列之间排序、拖放【英文标题】:Flutter: Sort, Drag and Drop between multiple lists or columns 【发布时间】:2019-07-04 10:59:09 【问题描述】:我一直在研究一些列表排序库,如 flutter_list_drag_and_drop
、reorderable_list
、flutter_reorderable_list
、dragable_flutter_list
等,但都只使用一个列表。
我想要做的可以在下图中理解,这正是 Trello 应用所具有的。
任何图书馆建议或如何做到这一点?
【问题讨论】:
【参考方案1】:只是为了完成这个老问题,对于像我这样的人在 2021 年搜索的情况,这里有一个包,可以管理将项目从一个列表拖放到另一个列表,并自行拖放这些列表。 Flutter package from pub.dev
教程可以在这里找到:Tutorial by Johannes Milke
【讨论】:
【参考方案2】:我使用boardviewflutter 插件。
import 'package:boardview/board_item.dart';
import 'package:boardview/board_list.dart';
import 'package:boardview/boardview.dart';
@override
Widget build(BuildContext context)
List<BoardList> boardList = List<BoardList>();
List<BoardItem> boardItem = List<BoardItem>();
boardItem.add(new BoardItem(
boardList: BoardListState(),
item: boarditem(),
test: '1',
));
boardList.add(BoardList(
index: 1,
items: boardItem,
header: header()
));
Widget header()
return Row( ... );
Widget boarditem()
return Card( ... );
return BoardView(
lists: boardList,
);
【讨论】:
对于那些想要在垂直堆叠的列表之间拖动项目的人,请尝试与boardview 相同作者的checklist。【参考方案3】:如果您还没有找到好的解决方案,可以使用 boardview 颤振插件。
它具有与 trellos 可拖动列表相同的功能。
(P.S. 我是它的开发者,我在创建它时很懒,所以没有示例 gif)
【讨论】:
我在发现这个主题之前找到了你的仓库。感谢您的贡献!我决定进一步搜索,因为没有文档并且遇到了这个。自述文件中的几行用法将使 lib 有用一百倍。 :-) 例如复制/粘贴 Pak 所写的内容。 你的BoardList
的支持嵌套BoardList
的吗?【参考方案4】:
我一直在研究一些列表排序库,例如flutter_list_drag_and_drop、reorderable_list、flutter_reorderable_list、dragable_flutter_list 等,但都只使用一个列表。
对!所有当前可用的库都只使用一个列表。
我还有一个名为orderable_stack
的插件它基于“数据项”列表
详情请咨询orderable_stack。
您也可以参考this 链接了解更多可拖动的实现。
注意:目前orderable_stack
与 Dart 2 不兼容
希望对你有帮助
【讨论】:
以上是关于Flutter:在多个列表或列之间排序、拖放的主要内容,如果未能解决你的问题,请参考以下文章