打开当前(顶部)路由的抽屉,可以通过以下代码实现:
Scaffold.of(context).openDrawer();
完整示例代码如下:
import 'package:flutter/material.dart';
class MyHomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Home'),
),
body: Center(
child: RaisedButton(
onPressed: () {
Scaffold.of(context).openDrawer();
},
child: Text('Open Drawer'),
),
),
drawer: Drawer(
child: ListView(
children: [
UserAccountsDrawerHeader(
accountName: Text('Flutter'),
accountEmail: Text('flutter@example.com'),
),
ListTile(
leading: Icon(Icons.home),
title: Text('Home'),
onTap: () {
Navigator.pop(context);
},
),
ListTile(
leading: Icon(Icons.settings),
title: Text('Settings'),
onTap: () {
Navigator.pop(context);
},
),
],
),
),
);
}
}