无法在 Flutter 中更改 ListTile 的 "Leading Icon" 的颜色

Can't change color of a "Leading Icon" of a ListTile in Flutter

我有一个带 ListView 的抽屉,里面有 ListTiles。在每个 ListTile 中都有一个主导元素,即图标。我想从我的 ThemeData 更改 ListTiles 中所有图标的颜色。我试过了,但是它不起作用。

这是我当前的代码(仅限 class):

class _UniversalConverter extends State<UniversalConverter> {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        debugShowCheckedModeBanner: false,
        theme: ThemeData(
          primarySwatch: Colors.blue,
          iconTheme: const IconThemeData(color: Colors.blue),
        ),
        home: Scaffold(
          appBar: AppBar(
            title: const Text("Universal Converter"),
          ),
          drawer: Drawer(
            child: ListView(
              padding: EdgeInsets.zero,
              children: [
                const DrawerHeader(
                  child: Text('Drawer Header'),
                ),
                ListTile(
                  title: const Text('Home'),
                  leading: const Icon(Icons.home),
                  onTap: () {},
                ),
                ListTile(
                  title: const Text('Angle'),
                  leading: const Icon(Icons.block),
                  onTap: () {},
                ),
              ],
            ),
          ),
        ));
  }
}

如您所见,我有 iconTheme: const IconThemeData(color: Colors.blue), 但它什么也没做。

如有任何帮助,我们将不胜感激, 谢谢!

尝试使用 ListTileTheme

listTileTheme: ListTileThemeData(
  iconColor: Colors.blue
),

ListTile(
   title: const Text('Angle'),
   leading: const Icon(Icons.block, color: Theme.of(context).iconTheme.color),
   onTap: () {},
),

图标本身有一个 属性 颜色。考虑以下代码片段。

ListTile(
title: Text('Hi'),
leading: Icon(Icons.block, 
color : Colors.orange,
),
onTap: () {
// To do 

}, ),