【问题标题】:preloaded_fonts does not work programatically when not specified in any layout未在任何布局中指定时,预加载字体无法以编程方式工作
【发布时间】:2020-03-27 23:20:20
【问题描述】:

使用android studio(基于https://stackoverflow.com/a/47793223)添加可下载字体后,我无法以编程方式加载添加的字体。

ResourcesCompat.getFont(context, R.font.roboto)

导致以下错误

android.content.res.Resources$NotFoundException: Font resource ID #0x7f080009
at android.support.v4.content.res.ResourcesCompat.loadFont(ResourcesCompat.java:218)
at android.support.v4.content.res.ResourcesCompat.getFont(ResourcesCompat.java:196)

但是一旦我在一些布局文件中指定了相同的字体,比如

android:fontFamily="@font/roboto"

有效。

它现在也开始以编程方式工作。

【问题讨论】:

标签: android android-fonts


【解决方案1】:

为了以编程方式访问字体,您需要创建一个字体请求。

阅读this官方文档。

如果您认为这是一个漫长的过程,您可以随时在 xml 中指定它,如果您不需要该视图,则将其可见性设置为 Gone。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多