所以我看到
ReorderableListView demo,看到他们有了
“secondary:const Icon(Icons.drag_handle)”
但是看了reorderable_list.dart文件,我发现无论如何整个列表都可以在LongPressDraggable上拖拽[第424行].那么如何才能明确地对源代码或我自己的源代码进行更改,以便正确地使图标成为实际的拖动句柄?
CheckBoxListTile( key: Key(item.value),isThreeLine: true,value: item.checkState ?? false,onChanged: (bool newValue) { setState(() { item.checkState = newValue; }); },title: Text('This item represents ${item.value}.'),subtitle: secondary,secondary: const Icon(Icons.drag_handle),// Make this Icon drag source );
谢谢
解决方法
我认为Icon(Icons.drag_handle)只是为了那里的外观,要在ReorderableListView中拖动项目,你必须长按它.
您可以使用flutter_reorderable_list并实现这一目标.正如您在其演示中所看到的,此插件可以按您希望的方式工作.
但是,它与ReorderableListView的工作方式完全不同,代码更改可能有点压倒性.我创建了一个Widget来简化该开关,即widget is here及其demo is here.
如果它适合您的使用案例,请查看并使用它.