我正在尝试AppBar使用主题设置我的动作图标的颜色,但由于某种原因它不起作用。这是我的最小代码示例:
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(
primarySwatch: Colors.blue,
iconTheme: IconThemeData(color: Colors.purple),
primaryIconTheme: IconThemeData(color: Colors.red),
accentIconTheme: IconThemeData(color: Colors.amber)
),
home: Scaffold(
appBar: AppBar(
iconTheme: IconThemeData(color: Colors.green),
actionsIconTheme: IconThemeData(color: Colors.yellow),
actions: [
IconButton(icon: Icon(Icons.add))
]
)
));
}
}
Run Code Online (Sandbox Code Playgroud)
iconTheme任何颜色值有任何影响。MaterialApp.iconTheme,AppBar.iconTheme或者AppBar.actionsIconTheme确实生效Icon.color确实有效,但我认为我不应该这样做,对吗?我如何获得IconButton尊重我的主题?
谢谢托马斯
编辑:通过Icon直接使用 a而不是 aIconButton我实际上能够让图标尊重我的主题,但我如何使其可点击?据https://api.flutter.dev/flutter/material/AppBar/actions.html的IconButton是最常见的小部件才能使用AppBar.actions。那不正确吗?
所以,显然我的问题是,我没有定义onPressed的属性IconButton。一旦我添加了它,我的主题就被正确应用了。
我知道这是一个必需的属性,但在构建/运行应用程序时我没有收到任何错误。
| 归档时间: |
|
| 查看次数: |
5379 次 |
| 最近记录: |