You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio预览无法加载Jetpack Compose自定义Google字体怎么办?

解决Jetpack Compose预览中Google Fonts不生效的问题

问题根源

Android Studio的Compose预览环境没有集成Google Play Services,而你用的是通过Google Font Provider加载的在线字体——预览环境没法访问这个字体源,自然渲染不了自定义字体,只会 fallback 到系统默认字体。

可行解决方案

方案1:添加本地字体作为预览兜底(推荐)

给FontFamily同时配置本地字体文件和在线字体,预览环境会优先用本地字体,真机/模拟器则正常加载在线字体(在线加载失败时也会兜底到本地):

  1. 把对应字体文件(比如ShadowsIntoLightTwo-Regular.ttf)放到项目的res/font目录下(没有就新建这个目录)。
  2. 修改Type.kt代码:
val cursiveFontFamily = FontFamily(
    // 预览用本地字体
    Font(R.font.shadows_into_light_two_regular),
    // 真机/模拟器用在线字体
    Font(
        googleFont = GoogleFont("Shadows Into Light Two"),
        fontProvider = provider
    )
)

方案2:临时调整预览参数

在预览注解里加上fontScale = 1.0f,写成@Preview(showBackground = true, fontScale = 1.0f),不过这个方法对部分Android Studio版本无效,只能作为临时测试用。

方案3:升级Android Studio

部分旧版Android Studio的Compose预览对Google Fonts支持不完善,升级到最新稳定版可能修复问题,但这个方案不如方案1可靠——毕竟离线预览环境本质上还是没法访问在线字体源。

验证

修改完代码后刷新预览,就能看到自定义字体正常显示了,真机和模拟器的字体加载逻辑不受任何影响。

内容的提问来源于stack exchange,提问作者Dove668

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 09:02:18