如何根据Flutter中的内容调整BottomSheet的高度

  • 发表于
  • flutter

将默认的BottomSheet添加到Flutter应用程序时,必须克服某些困难。一种是sheet的高度。

我们无法更改sheet的高度,最大高度将为屏幕的一半。但是我们可以自定义BottomSheet的代码以提供完整的高度。

Flutter自定义BottomSheet高度

首先创建一个名为BottomSheetCustom的新Dart文件,然后复制默认的底部工作表代码并将其粘贴到此处。然后找到方法getConstraintsForChild。在这里,我们可以如下更改“约束”值。

@override
BoxConstraints getConstraintsForChild(BoxConstraints constraints) {
return BoxConstraints(
minWidth: constraints.maxWidth,
maxWidth: constraints.maxWidth,
minHeight: 0.0,
maxHeight: constraints.maxHeight,
);
}

然后将showModalBottomSheet的方法名称更改为showModalBottomSheetCustom。现在,您可以导入BottomSheetCustom并调用方法showModalBottomSheetCustom,它将在整个屏幕上显示工作表。

Flutter自适应BottomSheet的高度

如果要根据内容调整底纸高度,可以将子窗口小部件包装在SingleChildScrollView中。

从这里查看完整代码