在模态底部工作表上方显示 SnackBar

Joe*_*nes 6 dart flutter flutter-layout

我试图SnackBar在我的模态底表上方显示一个,但它不起作用。知道如何实现这一目标吗?

PS:将 SnackBar Behavior 设置为 Floating 不起作用。它仍然出现在模态底部工作表下方

谢谢

小智 12

您将需要使用GlobalKey<ScaffoldState>来显示Snackbar所需的脚手架,因为您可以将其添加到下面的片段Scaffold中;showModalBottomSheet

GlobalKey在 Statefull 或 Stateless widget 类中定义您

final GlobalKey<ScaffoldState> _modelScaffoldKey = GlobalKey<ScaffoldState>();
Run Code Online (Sandbox Code Playgroud)

button媒体上你可以有;


                showModalBottomSheet(
                  context: context,
                  builder: (_) => Scaffold(
                      extendBody: false,
                      key: _modelScaffoldKey,
                      resizeToAvoidBottomInset: true,
                      body: FlatButton(
                        child: Text("Snackbar"),
                        onPressed: () {
                          _modelScaffoldKey.currentState.showSnackBar(SnackBar(
                            content: Text("Snackbar"),
                          ));
                        },
                      )),
                );

Run Code Online (Sandbox Code Playgroud)

飞镖板


Ale*_* Lo 12

只需用Scaffold包裹您的子部件

await showModalBottomSheet(
   context: context,
   builder: (builder) => Scaffold(
      body: YourModalContentWidget()
   )
);
Run Code Online (Sandbox Code Playgroud)


tri*_*zin -3

您是否尝试过将行为属性设置为浮动?

SnackBar(
  behavior: SnackBarBehavior.floating
Run Code Online (Sandbox Code Playgroud)

这应该可以解决问题

  • 不起作用,它仍然出现在模态底部表单下方 (2认同)