【发布时间】:2017-05-03 02:29:23
【问题描述】:
我正在尝试制作一个 Flutter 小部件来设置温度,看起来像恒温器旋钮。我已经扩展了 CustomPainter 以在屏幕上实际绘制它,现在我正在尝试设置抓取功能,以便用户可以旋转它。
当用户触摸屏幕时,我可以使用 GestureDetector 小部件获取回调,但我需要知道它相对于旋钮中心的位置。不幸的是,GestureDetector 提供的位置是绝对坐标,而画布相对于小部件的原点工作。有没有办法可以将这些坐标中的一个转换为另一个?
这意味着我需要:
1) 一种获取相对于 CustomPainter 小部件的点击位置的方法
2) 一种获取 CustomPainter 小部件绝对位置的方法
我找不到可以提供其中任何一种的 API。有这样的API吗?
上下文:https://github.com/dgp1130/thermo/blob/master/lib/widgets/temp_picker.dart
目前的方式是,旋转恒温器可以工作,但由于应用栏的高度,触摸的“中心”实际上是在实际中心上方的一半左右。
谢谢
【问题讨论】:
标签: flutter