Jetpack Compose Text 组件中的等宽数字

ame*_*non 5 android-jetpack-compose android-jetpack-compose-text

我在 Jetpack Compose 应用程序中使用自定义字体,并且希望将特定文本组件中的数字等宽。

对于标准 Android TextView,可以使用fontFeatureSetting="tnum"属性 ( /sf/answers/2880033621/ ) 来完成。

如何使用 Jetpack Compose 做到这一点?

倒计时时钟

Phi*_*hov 9

buildAnnotatedString需要自定义字符串的不同部分。

如果您需要将某种文本样式应用于整个Text,您可以使用style参数。

Text(
    text = String.format(Locale.ROOT, "%02d:%02d", mins, secs),
    style = LocalTextStyle.current.copy(fontFeatureSettings = "tnum"),
)
Run Code Online (Sandbox Code Playgroud)

LocalTextStyle.current在这里使用的是 的默认样式Text,但您可以将其替换为您需要的样式,例如您的主题排版之一:MaterialTheme.typography.h4