HarmonyOS鸿蒙Next中Flutter开发的应用在使用Flutter内置的Material Icons能力时候出现内置图标不显示的情况

HarmonyOS鸿蒙Next中Flutter开发的应用在使用Flutter内置的Material Icons能力时候出现内置图标不显示的情况 【问题描述】:Flutter开发的鸿蒙应用 在使用Flutter内置的Material Icons能力时候出现内置图标不显示的情况

【问题现象】:图标在鸿蒙端不显示

【版本信息】:HarmonyOS NEXT Flutterohos

【复现代码】:代码片段附结尾

cke_220.png

cke_1028.png


更多关于HarmonyOS鸿蒙Next中Flutter开发的应用在使用Flutter内置的Material Icons能力时候出现内置图标不显示的情况的实战教程也可以访问 https://www.itying.com/category-92-b0.html

3 回复

本地测试Flutterohos支持Materiallcons能力 文本方式后面未附带字体信息导致问题

cke_132.png

更多关于HarmonyOS鸿蒙Next中Flutter开发的应用在使用Flutter内置的Material Icons能力时候出现内置图标不显示的情况的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


在HarmonyOS NEXT上,Flutter内置的Material Icons不显示,是因为其字体文件(MaterialIcons-Regular.ttf)在鸿蒙环境下未正确嵌入或注册,鸿蒙字体渲染机制与标准Android不同,导致图标字形缺失。需要确认应用的pubspec.yaml中显式声明了uses-material-design: true,且编译后字体资源实际存在于APK/App Pack中;若仍缺失,可能是鸿蒙Flutter Engine对自定义字体加载存在兼容性限制,图标资源无法映射。,

在 HarmonyOS NEXT 上使用 Flutter 内置 Material Icons 不显示,通常是因为 MaterialIcons 字体文件未正确集成到鸿蒙编译产物中。Flutter for OHOS 的引擎版本可能未默认嵌入 MaterialIcons-Regular.otf 或字体注册方式存在差异。

解决办法:在工程 pubspec.yaml 中显式声明该字体,强制将其打包:

flutter:
  fonts:
    - family: MaterialIcons
      fonts:
        - asset: packages/flutter/material_icons/MaterialIcons-Regular.otf

同时需确保 flutter_ohos 版本支持该路径映射。若仍不生效,可自行下载字体文件放置于 assets/fonts/ 下直接引用。

回到顶部