![](/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.