gpt4 book ai didi

flutter - 在模式底部工作表上方显示SnackBar

转载 作者:行者123 更新时间:2023-12-03 14:38:23 27 4
gpt4 key购买 nike

我试图在模态底部工作表上方显示SnackBar,但是它不起作用。知道如何实现吗?
附言:将SnackBar行为设置为“ float ”无效。它仍然出现在模式底部的下面
谢谢

最佳答案

如果您愿意使用第三方软件包,则可以使用GetX轻松地做到这一点。
只需将包导入到pubspec.yaml文件中即可:

dependencies:
get: ^3.17.0
将您的 MaterialApp更改为 GetMaterialApp

GetMaterialApp is necessary for routes, snackbars, internationalization, bottomSheets, dialogs, and high-level apis related to routes and absence of context.


并使用 Get.bottomSheet()Get.snackbar()。您有一堆属性可以自定义这两种方法。如果BottomModalSheet已打开,并且您创建了Snackbar,则它会自动显示在图纸上方。
简单示例:
import 'package:flutter/material.dart';
import 'package:get/get.dart';

void main() {
runApp(MyApp());
}

class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return GetMaterialApp(
debugShowCheckedModeBanner: false,
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
visualDensity: VisualDensity.adaptivePlatformDensity,
),
home: Home(),
);
}
}

class Home extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Snackbar above Bottom Modal Sheet'),
),
body: SafeArea(
child: Center(
child: RaisedButton(
child: Text('Open Modal Sheet'),
onPressed: () {
// Bottom Modal Sheet
Get.bottomSheet(
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text('My bottom modal sheet'),
RaisedButton(
child: Text('Show SnackBar'),
onPressed: () {
// Snackbar
Get.snackbar(
'Hey',
'I am a snackbar',
snackPosition: SnackPosition.BOTTOM,
backgroundColor: Colors.red,
);
},
),
],
),
backgroundColor: Colors.green,
);
},
),
),
),
);
}
}
demo

关于flutter - 在模式底部工作表上方显示SnackBar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60679737/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com