Flutter:从自定义小部件打开抽屉
Flutter: Open Drawer from a custom widget
我使用自定义小部件代替 AppBar,但是在点击图标(代替 AppBar 的前导 属性)时它没有打开 Drawer
。
我怎样才能做到这一点?我想从自定义应用栏打开抽屉。
您需要创建一个 GlobalKey 并在其上使用 openDrawer() 方法。
GlobalKey<ScaffoldState> _drawerKey = GlobalKey();
@override
Widget build(BuildContext context) {
return Scaffold(
key: _drawerKey, // assign key to Scaffold
drawer: Drawer(),
);
}
Widget _getAppBar(){
return IconButton(
icon: Icon(
Icons.person,
),
onPressed: (){
_drawerKey.currentState.openDrawer();
},
),
}
我使用自定义小部件代替 AppBar,但是在点击图标(代替 AppBar 的前导 属性)时它没有打开 Drawer
。
我怎样才能做到这一点?我想从自定义应用栏打开抽屉。
您需要创建一个 GlobalKey 并在其上使用 openDrawer() 方法。
GlobalKey<ScaffoldState> _drawerKey = GlobalKey();
@override
Widget build(BuildContext context) {
return Scaffold(
key: _drawerKey, // assign key to Scaffold
drawer: Drawer(),
);
}
Widget _getAppBar(){
return IconButton(
icon: Icon(
Icons.person,
),
onPressed: (){
_drawerKey.currentState.openDrawer();
},
),
}