默认情况下,flutter 中的 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());
请注意,'Builder' 是必需的,以便 IconButton 获取 Scaffold 下方的上下文。没有它,它将改为使用应用程序的上下文,因此无法找到脚手架。
另一种(更简洁的?)选项是制作一个包含 IconButton 的 StatelessWidget。
关于dart - 如何在 flutter 中更改 endDrawer 图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51957960/