在 compose 中使用 sans-serif-condensed

Using sans-serif-condensed in compose

我想在 jetpack compose 中使用 sans-serif-condensed,但对于我来说,我无法在 compose 本身的任何地方找到它?

我是瞎了眼,还是需要做一些事情,比如导入字体并手动设置?

您可以使用 fontFamily 属性来指定字体系列。

Text("Hello World", fontFamily = FontFamily.Serif)

预定义字体

默认情况下,Jetpack compose 只有 5 个字体系列,
DefaultSansSerifSerifMonospaceCursive.

自定义字体

如果您需要任何其他字体系列(这似乎是您的情况),您必须添加它 as mentioned here

步骤

  1. 下载或获取所需的字体文件并将它们添加到 res/fonts 目录。

  2. 像这样创建FontFamily

     val firaSansFamily = FontFamily(
         Font(R.font.firasans_light, FontWeight.Light),
         Font(R.font.firasans_regular, FontWeight.Normal),
         Font(R.font.firasans_italic, FontWeight.Normal, FontStyle.Italic),
         Font(R.font.firasans_medium, FontWeight.Medium),
         Font(R.font.firasans_bold, FontWeight.Bold)
     )
    
  3. 这样使用,

     Text(..., fontFamily = firaSansFamily, fontWeight = FontWeight.Light)
     Text(..., fontFamily = firaSansFamily, fontWeight = FontWeight.Normal)