flutter - 点击 AppBar 打开抽屉

如果您创建支架,则可以选择抽屉。如果您现在创建此抽屉,您将自动获得应用栏前导位置的菜单图标。但我想要一个打开抽屉的其他图标。我尝试自己在领先位置制作一个图标按钮,但即使使用“Scafold.of(context).openDrawer()”,此按钮也无法打开抽屉。

是否有任何选项可以替换抽屉按钮的图标?

最佳答案

Scaffold 中使用 Key 并通过调用 myKey.currentState.openDrawer() 显示抽屉,这是一个工作代码:

import "package:flutter/material.dart";

class Test extends StatefulWidget {
  @override
  _TestState createState() => new _TestState();
}

class _TestState extends State<Test> {
  final GlobalKey<ScaffoldState> _scaffoldKey = new GlobalKey<ScaffoldState>();

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      key: _scaffoldKey,
      drawer: new Drawer(),
      appBar: new AppBar(
        leading: new IconButton(
          icon: new Icon(Icons.settings),
          onPressed: () => _scaffoldKey.currentState.openDrawer(),
        ),
      ),
    );
  }
}

https://stackoverflow.com/questions/47435231/

相关文章:

flutter - 垂直视口(viewport)被赋予了无限的高度

dart - 如何为 qa/dev/prod 构建不同版本的 Flutter 应用程序?

dart - 如何检测 Flutter 中布局的方向变化?

flutter - 如何在 ListView 中添加滚动指示器

dart - 带有快速拨号的 flutter float Action 按钮

flutter - 如何从 Flutter 应用程序调用电话

flutter - 如何在 Flutter 中创建 GridView 布局

android - 使用 Flutter 的 Android Studio 中不显示设备列表

google-maps - 如何在 Flutter 中更改谷歌地图标记的图标大小?

dart - 如何将数据从子小部件传递到其父小部件