运行Flutter应用到Chrome/macOS时出现ui.TextLeadingDistribution未找到错误
问题原因
- 报错的核心是
styled_text: 3.0.1依赖了Flutter 2.10.0版本才新增的dart:uiAPITextLeadingDistribution,你当前使用的Flutter 2.0.6、2.5.3版本均低于2.10.0,不存在该API,因此编译失败。 - Android、iOS模拟器暂时能正常运行是因为旧编译缓存未完全清理,后续清理缓存重新编译移动端也会触发相同报错。
解决方案
方案1:降级styled_text版本(无需升级Flutter)
在pubspec.yaml中固定styled_text的版本为兼容低版本Flutter的2.7.0版本,注意不要加^前缀避免自动升级:
dependencies: styled_text: 2.7.0
之后依次执行:flutter cleanflutter pub get
重新运行Web/macOS端即可恢复正常。
方案2:升级Flutter版本(可保留styled_text 3.x功能)
将Flutter稳定版升级到2.10.0或更高版本,即可原生支持TextLeadingDistribution API,全平台编译都不会触发该错误。
内容的提问来源于stack exchange,提问作者Gpack
相关产品推荐
相关产品推荐

