![](/img/trans.png)
[英]How to add badge to BottomNavigationBarItem in Flutter?
[英]How to display a flutter modalBottomSheet when user taps a BottomNavigationBarItem
当用户点击 BottomNavigationBarItem 时,我想显示一个 modalBottomsheet,我试图将代码放在 function 中并在脚手架的主体中调用它,但这不起作用..关于如何做到这一点的任何想法? 在下面查看我的代码
import 'package:flutter/material.dart';
import 'package:modal_bottom_sheet/modal_bottom_sheet.dart';
class More extends StatefulWidget {
More({Key key}) : super(key: key);
@override
_MoreState createState() => _MoreState();
}
class _MoreState extends State<More> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(
'Modal Bottom Sheet',
style: TextStyle(color: Colors.white),
),
centerTitle: true,
),
body: displayModal());
}
displayModal() {
showBottomSheet(
context: context,
builder: (context) => Container(child: Text("data")),
);
}
}
showBottomSheet
是异步 function。 你应该使用这样的东西
body: Center(
child: ElevatedButton(
onPressed: () {
displayModal();
},
child: Text("show dialog"),
),
)
如果要在小部件加载时显示对话框,请在有状态小部件的 initState 中调用对话框
@override
void initState() {
super.initState();
WidgetsBinding.instance.addPostFrameCallback((_) async {
displayModal();
});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.