颤动 - 有没有办法只使用IconButton(不创建应用栏)来打开抽屉?

问题描述 投票:0回答:1

我正在尝试使用可以在我的应用页面上打开抽屉的IconButton,所以当我点击图标按钮时,我希望看到抽屉。我一直在寻找一种在线方式,但似乎只有两种解决方案:我可以使用appbar将IconButton放入,或者我可以尝试浮动操作按钮。但它们不是我想要的,我只想用IconButton来打开抽屉。有可能吗?

dart flutter
1个回答
0
投票

是的,您可以通过IconButton轻松打开抽屉,而无需使用appBar。您需要像我使用_scaffoldKey一样使用Key并使用_scaffoldKey.currentState.openDrawer()方法在IconButton小部件中打开抽屉。

class HomeState extends StatelessWidget {

final GlobalKey<ScaffoldState> _scaffoldKey =  GlobalKey<ScaffoldState>();

 @override
Widget build(BuildContext context) {

return Scaffold(
  key: _scaffoldKey,
         drawer: Drawer(
      child: ListView(
        children: <Widget>[
          ListTile(
            title: Text("Ttem 1"),
            trailing: Icon(Icons.arrow_forward),
          ),
          ListTile(
            title: Text("Item 2"),
            trailing: Icon(Icons.arrow_forward),
          ),
        ],
      ),
    ),
        body: ListView(
         children:[

    Container(
              margin: EdgeInsets.only(left: 15.0,top:100.0),
              child: IconButton(
                icon: Icon(Icons.menu),
                onPressed: () {
                  _scaffoldKey.currentState.openDrawer();
                },

              ),
            ),
            ]
        ),
            );}


   }
© www.soinside.com 2019 - 2024. All rights reserved.