Flutter OverlayEntry 不获取宽度、高度

cod*_*ler 0 size overlay dart flutter

我正在尝试显示OverlayEntry我的以下一个Textfields.

到目前为止它正在工作,唯一的问题是它本身OverlayEntry,出于某种原因,无论widthheight给孩子什么,覆盖层都会占用所有可用的屏幕宽度,并一直到屏幕底部的高度。

这里有一些代码,作为示例,我只是想显示一个 100x100 的小红色方块......不起作用:

OverlayEntry _getOverlay() {
    return OverlayEntry(
      builder: (context) => CompositedTransformFollower(
        link: _layerLink,
        showWhenUnlinked: false,
        offset: Offset(0, fieldHeight + 5),
        child: Container(
          width: 100,
          height: 100,
          color: Colors.red,
        ),
      ),
    );
  }
Run Code Online (Sandbox Code Playgroud)

如何管理 OverlayEntry 的宽度和高度?

Abh*_*iya 8

未检查,但可能有效。

在 OverlayEntry 中使用 Positioned。检查下面的例子。

return OverlayEntry(
      builder: (context) => Positioned(
        width: 100,
        height: 100,
        child:CompositedTransformFollower(
             link: this._layerLink,
             child: Container(
                 color: Colors.red,
             ),
        ),
      ),
    );
Run Code Online (Sandbox Code Playgroud)