所以我想觸發在 Flutter 中打開抽屜
我的網站如下所示:
final GlobalKey<ScaffoldState> _key = GlobalKey(); // Create a key
@override
Widget build(BuildContext context) {
return GestureDetector(
onTap: () => FocusManager.instance.primaryFocus?.unfocus(),
child: Scaffold(
key: _key,
drawer: HomeDrawer(),
body: StartAppBar(_key.currentState!.openDrawer),
bottomNavigationBar: BottomBar(),
),
);
}
}
在這一行中,我嘗試參考該函式:
body: StartAppBar(_key.currentState!.openDrawer),
& 在我的 StartAppBar 中,我寫道:
class StartAppBar extends StatelessWidget {
void Function() openDrawer;
StartAppBar(this.openDrawer);
& on onPressed 在 StartAppBar 我試圖呼叫該函式
onPressed: () {
openDrawer;
},
但它不知何故說這是一個不必要的陳述,所以我不能打開抽屜。我究竟做錯了什么?
uj5u.com熱心網友回復:
您忘記了括號,因此它呼叫了該函式:
onPressed: () {
openDrawer();
},
或者干脆
onPressed: openDrawer,
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/468621.html
上一篇:sed:如果第二個欄位與模式匹配,則用存盤在變數中的值替換最后一個欄位
下一篇:從子類Flutter激活函式
