我想在程序中使用Flutter的Material design图标,为此,我需要使用Icon小部件。我有一个网络图像(NetworkImage小部件),如果URL为空,我想显示“材质设计”图标。
Container(
width: 48.0,
height: 48.0,
decoration: BoxDecoration(
image: DecorationImage(
image: imgLink.isEmpty
? Icon(Icons.person_outline)
: NetworkImage(
imgLink,
),
),
borderRadius: BorderRadius.circular(10.0)),
),
它显示错误,因为图标不是ImageProvider的子类型。现在,我如何将Icon转换为ImageProvider或任何其他方式。
答案 0 :(得分:1)
image仅支持ImageProvider类,该类具有 以下实施者 AssetBundleImageProvider,FileImage,MemoryImage,NetworkImage,ResizeImage,ScrollAwareImageProvider,因此它不支持图标小部件,因为图标小部件具有自己的IconData类,因此,这会向您发出错误消息,提示“图标不是ImageProvider的子类型” >