用键替换堆栈中的小部件

时间:2020-02-11 13:15:53

标签: flutter dart

在Flutter Stack文档中,您可以使用Keys替换Stack Widget中的Widget。您可以在 key 属性中使用GlobalKeys。问题是,我不知道如何使用键替换堆栈小部件中的小部件。我想举一个完整的例子,用GlobalKey替换堆栈中的Widget。

1 个答案:

答案 0 :(得分:0)

不适用于小部件位置

控制一个小部件如何替换树中的另一个小部件。

根据您的情况使用定位的小部件

一个控件,用于控制Stack子元素的放置位置。

如果您需要窗口小部件的位置来设置其他窗口小部件的位置,则可以使用下面的第一个键

  final keyContext = fisrtWidgetKey.currentContext;
  if (keyContext != null) {
    box = keyContext.findRenderObject();
    if (box != null) pos = box.localToGlobal(Offset.zero);
  }

pos包含您已通过的小部件的dx和dy