Flutter添加多个自定义图标问题:第二个图标无法显示
Flutter自定义图标无法显示的解决方法
排查与修复步骤:
检查字体配置与路径
确保pubspec.yaml的字体配置格式正确(YAML对缩进和空格敏感),路径拼写、大小写与实际文件完全匹配,建议简化路径写法:flutter: generate: true fonts: - family: BikeIcon fonts: - asset: assets/fonts/icons/Bike.ttf - family: LocationIcon fonts: - asset: assets/fonts/icons/Location.ttf执行
flutter clean清除缓存,再运行flutter pub get,重启IDE确保资源加载生效。验证字体编码
用系统自带的字体查看工具(如Windows字体查看器、macOS Font Book)打开Location.ttf,确认图标对应的编码确实是0xe800。如果编码不符,修改custom_icons.dart中location_icon的编码值。优化方案:合并图标为单个字体文件
单个图标对应一个.ttf的方式会增加维护成本,推荐将所有自定义SVG一次性上传生成一个统一的字体文件:- 把三个SVG一起上传生成单份
.ttf - 在
pubspec.yaml中只配置一个字体家族 - 使用自动生成的
custom_icons.dart,每个图标会有唯一编码,避免冲突
- 把三个SVG一起上传生成单份
额外检查
确认使用图标时的代码正确引用了CustomIcons.location_icon,无拼写错误;Android模拟器可尝试冷重启,清除字体缓存。
内容的提问来源于stack exchange,提问作者Ilian Gion Häsler
相关产品推荐
相关产品推荐

