最近在Flutter开发中遇到一个需求,就是从电脑磁盘中拖动图片到应用,在网上搜索了一些资料,找到一个插件:desktop_drop,最终解决了问题,在此记录一下:
1、安装desktop_drop插件
desktop_drop: ^0.4.4
2、实际用法
插件的用法比较简单,实际开发中主要用到以下几个方法:
void Function(DropEventDetails)? onDragEntered:拖动进入时void Function(DropEventDetails)? onDragExited:拖动离开时void Function(DropDoneDetails)? onDragDone:拖动完成后void Function(DropEventDetails)? onDragUpdated:拖动移动位置时
在项目中,我其实只用到了onDragDone方法,用到了参数中DropDoneDetails中两个属性files(拖拽的文件列表)和localPosition(拖拽时的坐标)。我们主要还是通过files属性拿到文件的地址,然后实现后续的功能,具体的例子包括文档可以去网站查看,比较详细了。