Во Flutter есть несколько способов открыть ящик внутри леса. Вот несколько распространенных подходов:
-
Использование ключа лесов:
final GlobalKey<ScaffoldState> _scaffoldKey = GlobalKey<ScaffoldState>(); void openDrawer() { _scaffoldKey.currentState?.openDrawer(); } // In your Scaffold widget: Scaffold( key: _scaffoldKey, // ... ) -
Использование ScaffoldMessenger:
void openDrawer(BuildContext context) { ScaffoldMessenger.of(context).openDrawer(); } // Call openDrawer() passing the BuildContext. -
Использование DrawerController:
final GlobalKey<DrawerControllerState> _drawerKey = GlobalKey<DrawerControllerState>(); void openDrawer() { _drawerKey.currentState?.open(); } // In your Scaffold widget: Scaffold( // ... drawer: Drawer( key: _drawerKey, // ... ), )
Это всего лишь несколько примеров. Могут быть и другие способы достижения того же результата в конкретных сценариях.