在Flutter中,如何找到某个(x,y)位置的小部件?

时间:2018-07-08 22:27:52

标签: flutter flutter-layout

给出相对于:的一些(x,y)坐标(以逻辑像素为单位)

  1. 屏幕的左上角。
  2. 某些Container的左上角。

我怎么知道哪个小部件在那个位置?

1 个答案:

答案 0 :(得分:5)

我认为您在hitTest类中的RenderBox方法之后。按照documentation

  

如果给定点包含在此渲染对象中,则返回true;否则返回true   它的后裔之一。添加任何包含该点的渲染对象   到给定的点击测试结果。

因此您可以从关键上下文中获取小部件的RenderBox实例

GlobalKey key = new GlobalKey();
//your stuff
final RenderBox box = key.currentContext.findRenderObject()
// do box.hitTest
相关问题