如何在 Flutter CustomPaint 中处理运动手势?

时间:2021-03-16 15:53:11

标签: flutter

我有一个 CustomPaint,它可以绘制多个要四处移动的小圆圈。

这些圆圈所在位置的计算基于传递给 CustomPaint.paint 的大小值。据我所知,要将动作手势添加到 CustomPaint,我需要将其包装在 GestureDetector 中。不过,我不确定如何使这种方法奏效。

要确定触摸是否落在圆圈内,我需要知道圆圈所在的位置。但是 GestureDetector 中的逻辑无法计算圆的位置,因为它不知道传递给 CustomPaint.paint 的大小值。

传递给 CustomPaint.paint(Canvas canvas, Size size) 的 size 值根据其父项(padding、sizedBox 等)而变化。

如果 GestureDetector 无法访问 CustomPaint 绘图大小,我该如何计算它的运动逻辑??

0 个答案:

没有答案