我放置了用“Flutter自定义图标生成器”创建的图标,但是有些错误,我想设置一个类似SVG的图标

ryhaxcpt  于 2022-11-17  发布在  Flutter
关注(0)|答案(1)|浏览(127)

个问题

我想把像SVG的图标。但我不能把它。

  • Flutter自定义图标生成器生成的dart文件。
class WDLogo {
  WDLogo._();

  static const _kFontFam = 'WDLogo';
  static const String? _kFontPkg = null;

  static const IconData arrow_back = IconData(0xe801, fontFamily: _kFontFam, fontPackage: _kFontPkg);
  static const IconData arrow_forward = IconData(0xe802, fontFamily: _kFontFam, fontPackage: _kFontPkg);
  static const IconData menu = IconData(0xe803, fontFamily: _kFontFam, fontPackage: _kFontPkg);
}
  • pubspec.yaml
fonts:
    - family: WDLogo
      fonts:
        - asset: assets/fonts/WDLogo.ttf
  • 图标小部件
"Icon(WDLogo.arrow_back))"

https://www.fluttericon.com/

  • SVG(正确图标)

  • Mac文件夹

  • Flutter自定义图标生成器

  • Mac字体预览

vmdwslir

vmdwslir1#

您需要将字体添加到asset文件夹中,并在pubspec.yaml文件中定义它,如下所示

flutter: 
   fonts:
   - family:  MyFlutterApp
      fonts:
       - asset: fonts/MyFlutterApp.ttf

首先添加插件,链接:https://pub.dev/packages/fluttericon/install到你的pubsepec.yaml文件。之后,导入文件。然后像这样调用你的图标

final myIcons = const <Widget>[
    const Icon(Typicons.attention),
    const Icon(Fontelico.emo_wink),
    const Icon(Linecons.globe),
];

不要这样使用"Icon(WDLogo.arrow_back))"
如果你需要使用SVG,你可以使用这个Flutter SVG插件,插件链接https://pub.dev/packages/flutter_svg

final String assetName = 'assets/image.svg';
final Widget svg = SvgPicture.asset(
  assetName,
  semanticsLabel: 'Acme Logo'
);

相关问题