Flutter:参数类型“Image”无法分配给参数类型“IconData”

dex*_*dim 7 icons image dart flutter flutter-assetimage

我想使用资产中的图像作为图标,然后构建列表,但是当尝试将Image.asset作为类添加到图标作为IconData数据类型的变量而不是使用图标作为图标时,会发生一些错误班级。

有办法解决这个问题吗?

谢谢。

class Menu {
  const Menu({this.icon, this.title});

  final IconData icon;
  final String title;
}

const List<Menu> menus = const <Menu>[
  const Menu(title: 'menu_icon_1', icon: Image.asset('assets/menu/1-1.png')),
],
Run Code Online (Sandbox Code Playgroud)
error: The argument type 'Image' can't be assigned to the parameter type 'IconData'. (argument_type_not_assignable at [sinergi] lib\home.dart:12)
Run Code Online (Sandbox Code Playgroud)

chu*_*han 9

请使用图像图标

class Menu {
  const Menu({this.icon, this.title});

  final ImageIcon icon;
  final String title;
}

const List<Menu> menus = const <Menu>[
  const Menu(title: 'menu_icon_1', icon: ImageIcon(AssetImage('assets/menu/1-1.png'))),
];
Run Code Online (Sandbox Code Playgroud)