Flutter 将主抽屉添加到Flatter中的按钮

Flutter 将主抽屉添加到Flatter中的按钮,flutter,flutter-layout,flutter-dependencies,Flutter,Flutter Layout,Flutter Dependencies,我是一个新手,需要将应用程序的主抽屉添加到按钮中,如下图所示(这是应用程序UI的上部) 任何让主抽屉应用于按钮而不是让它通常分配到应用程序栏的想法。(此移动应用程序没有应用程序栏) @覆盖 小部件构建(构建上下文){ var mediaQuery=mediaQuery.of(上下文); 返回脚手架( 钥匙:脚手架钥匙, 主体:堆栈( 儿童:[ _buildWidgetAlbumCover(mediaQuery), getMainContentWidget(mediaQuery), _build

我是一个新手,需要将应用程序的主抽屉添加到按钮中,如下图所示(这是应用程序UI的上部)

任何让主抽屉应用于按钮而不是让它通常分配到应用程序栏的想法。(此移动应用程序没有应用程序栏)

@覆盖
小部件构建(构建上下文){
var mediaQuery=mediaQuery.of(上下文);
返回脚手架(
钥匙:脚手架钥匙,
主体:堆栈(
儿童:[
_buildWidgetAlbumCover(mediaQuery),
getMainContentWidget(mediaQuery),
_buildWidgetMenu(mediaQuery),
_buildWidgetFloatingActionButton(mediaQuery),
抽屉(
子:ListView(
填充:EdgeInsets.zero,
儿童:[
抽屉阅读器(
子项:文本(“抽屉标题”),
装饰:盒子装饰(
颜色:颜色,蓝色,
),
),
列表砖(
标题:文本(“项目1”),
onTap:(){
},
),
列表砖(
标题:文本(“项目2”),
onTap:(){
},
),
],
),
),
],
),
);
}
小部件_buildWidgetMenu(MediaQueryData mediaQuery){
返回填充(
填充:仅限边缘设置(
左:2.0,
top:mediaQuery.padding.top+2.0,
),
孩子:排(
mainAxisAlignment:mainAxisAlignment.spaceBetween,
儿童:[
图标按钮(
图标:图标(
图标菜单,
颜色:颜色,白色,
尺码:25,
),
填充:所有边缘设置(2.0),
//按下时:()=>scaffoldKey.currentState.openDrawer(),
),
],
),
);
}

这是我得到这个代码后的输出。这个抽屉甚至不能换,因为它是固定的。我想要一个普通的抽屉,它也连接到_buildWidgetMenu,而不是应用程序栏抽屉。

如果您使用的是sacffold,它有一个抽屉属性,您可以使用例如

按一下按钮打开抽屉

 var scaffoldKey = GlobalKey<ScaffoldState>();
//required key 
     Scaffold(
        key: scaffoldKey,
        drawer: new Drawer(
          child: new ListView(
            padding: EdgeInsets.zero,...

             body:Center(..
                       IconButton(
                icon: Icon(Icons.menu),
//open drawer
                onPressed: () => scaffoldKey.currentState.openDrawer(),
          ),
var scaffoldKey=GlobalKey();
//所需密钥
脚手架(
钥匙:脚手架钥匙,
抽屉:新抽屉(
子:新列表视图(
填充:边集。零,。。。
正文:中心(。。
图标按钮(
图标:图标(图标菜单),
//抽屉
按下时:()=>scaffoldKey.currentState.openDrawer(),
),

始终显示一些代码告诉我们您迄今为止尝试了什么。添加了我迄今为止尝试的代码片段@Ashok
 return Scaffold(
  appBar: AppBar(title: Text(title)),
  body: Center(child: Text('My Page!')),
  drawer: Drawer(...
 var scaffoldKey = GlobalKey<ScaffoldState>();
//required key 
     Scaffold(
        key: scaffoldKey,
        drawer: new Drawer(
          child: new ListView(
            padding: EdgeInsets.zero,...

             body:Center(..
                       IconButton(
                icon: Icon(Icons.menu),
//open drawer
                onPressed: () => scaffoldKey.currentState.openDrawer(),
          ),