拖出应用
您可能希望在应用中的某个地方实现拖放功能。
您有两种潜在的方法。一种是直接使用 Flutter 组件,另一种是使用 pub.dev 上可用的包(super_drag_and_drop)。
在应用内创建可拖动组件
#如果您想在应用内实现拖放功能,可以使用 Draggable
组件。有关此方法的深入了解,请参阅“在应用中拖动 UI 元素”指南。
使用 Draggable
和 DragTarget
的一个优点是,您可以提供 Dart 代码来决定是否接受拖放。
欲了解更多信息,请查看“Draggable
组件每周一览”视频。
实现在应用之间拖放
#如果您想在应用内以及应用与其他(可能非 Flutter)应用之间实现拖放,请查看 super_drag_and_drop 包。
为了避免实现两种拖放样式(一种用于拖出应用,另一种用于应用内拖动),您可以向该包提供本地数据,以便在应用内执行拖动。
这种方法与直接使用 Draggable
的另一个区别是,您必须预先告知该包您的应用接受什么数据,因为平台 API 需要同步响应,而不允许框架进行异步响应。
使用此方法的优点是它适用于桌面、移动端和网页。