Dart 如何更改颤振中的endDrawer图标?

Dart 如何更改颤振中的endDrawer图标?,dart,flutter,Dart,Flutter,默认情况下,颤振中的endDrawer图标是汉堡包图标。我想把它改成一个过滤器图标 new Scaffold( endDrawer: Drawer(), ... } 这应该满足您的要求: import 'package:flutter/material.dart'; class App extends StatefulWidget { @override _AppState createState() => _AppState(); } class _AppState

默认情况下,颤振中的endDrawer图标是汉堡包图标。我想把它改成一个过滤器图标

new Scaffold(
  endDrawer: Drawer(),
  ...
}

这应该满足您的要求:

import 'package:flutter/material.dart';

class App extends StatefulWidget {
  @override
  _AppState createState() => _AppState();
}

class _AppState extends State<App> {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      home: new Scaffold(
        endDrawer: Drawer(),
        appBar: AppBar(
          actions: [
            Builder(
              builder: (context) => IconButton(
                    icon: Icon(Icons.filter),
                    onPressed: () => Scaffold.of(context).openEndDrawer(),
                    tooltip: MaterialLocalizations.of(context).openAppDrawerTooltip,
                  ),
            ),
          ],
        ),
        body: new Container(),
      ),
    );
  }
}

void main() => runApp(App());
导入“包装:颤振/材料.省道”;
类应用程序扩展StatefulWidget{
@凌驾
_AppState createState();
}
类_AppState扩展了状态{
@凌驾
小部件构建(构建上下文){
返回新材料PP(
家:新脚手架(
endDrawer:Drawer(),
appBar:appBar(
行动:[
建筑商(
生成器:(上下文)=>IconButton(
图标:图标(Icons.filter),
onPressed:()=>Scaffold.of(context.openEndDrawer(),
工具提示:MaterialLocalizations.of(context).openAppDrawerTooltip,
),
),
],
),
正文:新容器(),
),
);
}
}
void main()=>runApp(App());
注意“构建器”是必需的,这样IconButton就可以获得脚手架下的上下文。否则,它将使用应用程序的上下文,因此无法找到脚手架


另一种(更干净?)的选择是制作一个包含图标按钮的无状态小部件。

非常感谢@rmtmckenzie。非常感谢你的回答!我试过了,但最终得到了两个图标,可能是因为最初的回答发生了变化?@HillelCoren我只看到了一个图标(尽管特定的图标看起来像一堆两个),请查看,谢谢!一定还有别的事情发生。。。