首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在DragTarget.onMove (Flutter)中获取全局坐标?

在Flutter中,可以通过使用RenderBox类的globalToLocal方法来获取DragTarget的全局坐标。globalToLocal方法将全局坐标转换为相对于给定RenderBox的本地坐标。

以下是在DragTarget.onMove中获取全局坐标的步骤:

  1. 首先,确保你有一个DragTarget的引用,可以通过给DragTarget组件设置一个全局Key来实现。
代码语言:txt
复制
DragTarget(
  key: GlobalKey(),
  // ...
)
  1. 在DragTarget.onMove回调中,获取DragTarget的全局坐标。
代码语言:txt
复制
void onMove(DragTargetDetails details) {
  RenderBox renderBox = context.findRenderObject() as RenderBox;
  Offset globalOffset = renderBox.localToGlobal(details.offset);
  // ...
}

在上述代码中,context.findRenderObject()用于获取DragTarget的RenderBox对象,然后使用localToGlobal方法将details.offset转换为全局坐标。

通过这种方式,你可以在DragTarget.onMove中获取到DragTarget的全局坐标,并进行相应的处理。

关于Flutter的更多信息和相关产品,你可以参考腾讯云的Flutter开发文档:Flutter开发文档

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券