flutter 如何将svg图标导入icondata

4urapxun  于 2023-03-09  发布在  Flutter
关注(0)|答案(3)|浏览(418)

我新的Flutter和使用插件称为FloatBoxPanel,属性panelIcon一个IconData是预期的,我创建了一个svg图标,现在我不知道如何使用它。直接使用将显示错误:

The argument type 'Icon' can't be assigned to the parameter type 'IconData'. (Documentation)
The argument type 'SvgPicture' can't be assigned to the parameter type 'IconData'. (Documentation)

这里是这个代码的一部分,请让我知道如果可能的话,谢谢!!

// panelIcon's Type:IconData
panelIcon: Icon(
  SvgPicture.asset(
    'assets/images/candle.svg',
    height: 20.0,
    width: 20.0,
    allowDrawingOutsideViewBox: true,
  ),
),
z0qdvdin

z0qdvdin1#

类型IconData必须具有Icon()。不能将其设置为Image或Svg。
您有两种解决方案:要么使用@Thierry所说的将Svg转换为Icon,要么更改包中的代码以支持Image而不是Icon

fcwjkofz

fcwjkofz2#

有一种很好的方法可以从SVG图像创建IconData,方法是将其转换为.ttf文件格式,然后将其作为字体系列添加到pubspec.yaml中...
请检查整个过程的以下内容:
https://www.freecodecamp.org/news/how-to-add-custom-icons-to-your-flutter-application/
P.S.从“如何在Flutter中生成自定义图标”部分阅读。

irlmq6kh

irlmq6kh3#

Flutter中的Svg https://pub.dev/packages/flutter_svg
1.在pubspec.yaml中添加包
2.dependencies:扑动_SVG:任何
3.资产:-资产/图像/
4.to insert svg.
svg图片. asset('assets/images/your_image.svg ',宽度:24,身高:第29.2节),

相关问题