跳到主内容

在应用外部拖动

如何从一个应用拖动到另一个应用或操作系统。

你可能需要在你的应用中实现拖放功能。

你有几种潜在的方法可以选择。一种直接使用 Flutter 小部件,另一种使用一个包 (super_drag_and_drop),可在 pub.dev 上找到。

在你的应用内创建可拖动的小部件

#

如果你想在你的应用程序内实现拖放,你可以使用 Draggable 小部件。有关此方法的深入了解,请参阅 在应用内拖动 UI 元素 示例。

使用 DraggableDragTarget 的一个优势是,你可以提供 Dart 代码来决定是否接受拖放。

有关更多信息,请查看 Draggable 小部件精选 视频。

实现应用之间的拖放

#

如果你想在你的应用程序内实现拖放,并且在你的应用程序和另一个(可能不是 Flutter)应用程序之间实现拖放,请查看 super_drag_and_drop 包。

为了避免实现两种拖放样式,一种用于应用外部的拖放,另一种用于应用内部的拖放,你可以向该包提供 本地数据,以执行应用内的拖放。

这种方法与直接使用 Draggable 的另一个区别是,你必须提前告知该包你的应用接受什么数据,因为平台 API 需要同步响应,这不允许来自框架的异步响应。

使用这种方法的优势是,它适用于桌面、移动设备网络。