Flutter默认字体坑了我们整整一年

如果你用Flutter做iOS应用,默认的系统字体是 SF Pro Text,但是!它在显示中文字的时候,不支持 w500(中等加粗)!

也就是说,你在代码里设置 FontWeight.w500,中文部分可能根本不会变粗!肉眼看几乎跟普通字重没区别...... 这坑我整整一年才发现!😤

对于Together App来说,最典型的就是我们每个页面的标题,我们其实都用了w500,但是默认情况下,标题并不会变粗一点点。

解决方案:

在主题里面手动指定字体'PingFang SC',这样中文也能自动能应用上w500.

less 复制代码
MaterialApp(
    title: "Together",
    theme: ThemeData(
        fontFamily: "PingFang SC",
        //....
    ),
)

加上这个以后,标题自然就能变成恰当的粗细了,当然其他用了w500的地方也一样。

为了解决这个问题,我们当时还特地引入了阿里的普惠体,导致包体积无辜增大了好几个M,真是,无发可说!

总结:

👉 如果你在 iOS 上发现中文 w500 没有变粗,要手动指定 PingFang SC!

👉 别被 Flutter 默认字体坑了!这东西可能让你的 UI 一年都不对劲!🔥🔥🔥

这坑了我一年,别让它坑了你!⚠️ 如果你也遇到过 Flutter 的坑问题,一起在评论区交流一下!🗣️

相关推荐
苏元13 小时前
Flutter + GetX:Dio 多接口 401 拦截后跳登录,避免重复跳转和 Controller 找不到问题
flutter
Mhua_Z15 小时前
使用 flutter_tts 的配置项
flutter
你听得到1117 小时前
弹窗库1.1.0版本发布!不止于统一,更是全面的体验升级!
android·前端·flutter
RaidenLiu17 小时前
Riverpod 3 :掌握异步任务处理与 AsyncNotifier
前端·flutter
无知的前端20 小时前
Flutter 模型转JSON跳过零值/null
flutter·json
jiushiapwojdap1 天前
Flutter上手记:为什么我的按钮能同时在iOS和Android上跳舞?[特殊字符][特殊字符]
android·其他·flutter·ios
木子雨廷2 天前
Flutter 局部刷新小组件汇总
前端·flutter
恋猫de小郭2 天前
iOS 26 正式版即将发布,Flutter 完成全新 devicectl + lldb 的 Debug JIT 运行支持
android·前端·flutter
君赏2 天前
Petrel(雨燕)Flutter 热更新如何在我们项目应用
flutter
JulyYu2 天前
Flutter混合栈适配安卓ActivityResult
android·flutter