Colors 颤振弹出菜单更改图标颜色

Colors 颤振弹出菜单更改图标颜色,colors,dart,flutter,popup,icons,Colors,Dart,Flutter,Popup,Icons,如何更改PopupMenuButton上的图标颜色,我已将主题与iconTheme一起使用,但它不会影响CheckedPopupMenuItem或PopupMenuItem上的图标 Scaffold( backgroundColor: Colors.transparent, appBar: AppBar( elevation: 0.0, backgroundColor: Colors.transparent, actions

如何更改PopupMenuButton上的图标颜色,我已将主题与iconTheme一起使用,但它不会影响CheckedPopupMenuItem或PopupMenuItem上的图标

Scaffold(
      backgroundColor: Colors.transparent,
      appBar: AppBar(
        elevation: 0.0,
        backgroundColor: Colors.transparent,
        actions: <Widget>[
          Theme(
            data: Theme.of(context).copyWith(
              cardColor: Colors.indigo,
              iconTheme: IconThemeData(color: Colors.white),
            ),
            child: ListTileTheme(
              iconColor: Colors.white,
              child: PopupMenuButton<String>(
                onSelected: _showCheckedMenuSelections,
                itemBuilder: (BuildContext context) => <PopupMenuEntry<String>>[
                  CheckedPopupMenuItem<String>(
                    value: _checkedValue1,
                    checked: _showRoles,
                    child: Text(_checkedValue1, style: Theme.of(context).textTheme.body1),
                  ),
                  const PopupMenuDivider(),
                  PopupMenuItem<String>(
                    value: 'Get Link',
                    child: ListTile(
                      leading: Icon(Icons.phonelink),
                      title: Text('Get link', style: Theme.of(context).textTheme.body1),
                    ),
                  ),
                ],
              ),
            ),
          ),
        ],
      ),
脚手架(
背景颜色:颜色。透明,
appBar:appBar(
标高:0.0,
背景颜色:颜色。透明,
行动:[
主题(
数据:Theme.of(context).copyWith(
cardColor:Colors.indigo,
iconTheme:IconThemeData(颜色:Colors.white),
),
孩子:我是李斯特(
iconColor:Colors.white,
孩子:弹出菜单按钮(
onSelected:_showCheckedMenuSelections,
itemBuilder:(构建上下文)=>[
CheckedPopupMenuItem(
值:_checkedValue1,
选中:_showRoles,
child:Text(_checkedValue1,style:Theme.of(context.textTheme.body1),
),
常量PopupMenuVider(),
PopupMenuItem(
值:“获取链接”,
孩子:ListTile(
前导:图标(Icons.phonelink),
标题:Text('Get link',样式:Theme.of(context).textTheme.body1),
),
),
],
),
),
),
],
),
结果如下所示:

您可以将
图标
小部件包装在
图标按钮
中,该按钮提供
颜色
属性来更改图标颜色。下面的示例代码:

value: 'Get Link',
    child: ListTile(
    leading: IconButton(
      icon: Icon(Icons.phonelink,
      color: Colors.blue,),
      onPressed: () {},
    ),
    title: Text('Get link', style: Theme.of(context).textTheme.body1),
    ),
就这样做吧

 appBar: AppBar(
          iconTheme: IconThemeData(color: Colors.white, size: 10.0),
          elevation: 4.0,
          backgroundColor: Colors.black,
)

是的,我在PopupMenuItem上使用它,但是CheckedPopupMenu的图标不能更改。它只是一个字符串和布尔值,您可以参考