手机也不用重启, 点一下就变了. 是怎么实现的啊?
//背景: flutter 感知不到这种修改的字体, 会导致和原生写的 app 字体不一样, 看起来很突兀
![]() |
1
Eba 2024-07-03 15:41:46 +08:00
这个不知道你说的是魔改的系统还是官方的系统 官方的话都有主题市场 有对应的主题制作工具 只需要上传相应的素材就行 字体也是素材
|
![]() |
5
noahhhh 2024-07-03 16:24:57 +08:00
https://source.android.com/docs/core/runtime/rros?hl=zh-cn
应该是动态 overlay 实现 |
![]() |
6
RikkaW 2024-07-03 16:33:41 +08:00
应该是完全自己发明的,具体是怎样就没人知道了(
Flutter 、浏览器不受影响是因为它们是直接去读取 fonts.xml |
9
Niizuki 2024-07-03 17:07:58 +08:00
我记得最早 miui 改字体也是要重启的,后来就不用了
|
11
Kobayashi 2024-07-03 17:11:00 +08:00 via Android
system fonts 主字体是 symlink ,link 到 data 下哪里来了,记不大清了。
|
12
wjr2012 2024-07-03 17:31:09 +08:00
这个应该和修改主题颜色一个原理吧,所有能看到的东西都是绘制出来的。修改字体后系统会调用配置变更的回调接口,所有实现了这个接口的页面都去做界面重绘的动作。
|
13
wjr2012 2024-07-03 17:32:42 +08:00
自己开发的软件,Text 组件如果没有指定字体,那么就会使用系统默认字体重绘组件自身。
|