使用抽屉,然后在ListTile onTab时按下:
Navigator.push(
context,
new MaterialPageRoute(
builder: (context) =>
new MyWidget();
当用户按下推入的窗口小部件上的“后退”按钮时,导航是否可能不显示抽屉,而只是显示支架主体?
我看过将MyWidget包装在WillPopScope
中,然后回调,但没有成功吗?
我只想在用户单击图标时显示抽屉。
答案 0 :(得分:1)
最简单的方法是在进入下一个屏幕之前关闭抽屉。您可以在调用第二个屏幕之前使用Navigator.pop(context);
进行此操作。
class MyHomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("First Page"),
),
drawer: Drawer(
child: ListView(
padding: EdgeInsets.zero,
children: <Widget>[
DrawerHeader(
child: Text("Title page"),
),
ListTile(
title: Text('Item 1'),
onTap: () {
Navigator.pop(context);
Navigator.push(context, MaterialPageRoute(builder: (context) => SecondPage();
},
)
],
),
),
);
}
}