cus*_*pps 5 dart flutter bottom-sheet
我试图在应用程序启动时自动在 flutter 中显示bottom sheeet,但它出现错误。仅当我使用单击事件实例化它时,它才适用于我。但我怎样才能在屏幕启动时弹出它呢?
@override
Widget build(BuildContext context) {
showModalBottomSheet(context: context, builder: (BuildContext context) {
return Container();
});
Run Code Online (Sandbox Code Playgroud)
Ahm*_*tab 15
您可以在第一个屏幕的 initState 中执行此操作,如下所示
@override
void initState() {
// TODO: implement initState
Future.delayed(Duration(seconds: 0)).then((_) {
showModalBottomSheet(
context: context,
builder: (builder) {
return Container();
});
});
super.initState();
}
Run Code Online (Sandbox Code Playgroud)
你需要这样做,使用 future 和延迟,因为 initState 不允许 .of 在里面,这有点黑客,但它有效
简单的解决方案
@override
void initState() {
super.initState();
WidgetsBinding.instance.addPostFrameCallback((_) async {
showModalBottomSheet(context: context, builder: (BuildContext context) {
return Container();
});
});
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7499 次 |
| 最近记录: |