拖拽到應用外部
如何從一個應用拖拽到另一個應用或作業系統。
你可能需要在應用中的某個位置實現拖拽功能。
你有幾種可選方案。一種是直接使用 Flutter 原生元件,另一種是使用 pub.dev 上提供的軟體包(super_drag_and_drop)。
在應用內建立可拖拽元件
#如果你想在應用內實現拖拽,可以使用 Draggable 元件。關於這種方法的深入瞭解,請參閱“在應用內拖拽 UI 元素”指南。
使用 Draggable 和 DragTarget 的一個優勢是,你可以提供 Dart 程式碼來決定是否接受拖拽放置。
欲瞭解更多資訊,請檢視 Draggable 每週元件影片。
實現應用間的拖拽操作
#如果你不僅想在應用內實現拖拽,還想實現應用與另一個應用(可能非 Flutter 開發)之間的拖拽,請檢視 super_drag_and_drop 軟體包。
為避免實現兩種不同的拖拽樣式(一種用於應用外拖拽,另一種用於應用內拖拽),你可以向該軟體包提供 本地資料 (local data),從而在應用內執行拖拽操作。
這種方法與直接使用 Draggable 的另一個區別在於,你必須預先告知軟體包你的應用接受什麼資料,因為平臺 API 需要同步響應,這不允許來自框架的非同步響應。
使用此方法的一個優勢是它適用於桌面端、移動端以及 Web 端。