2

我的问题是如何Text在 Facebook 的 UI 框架Litho中为组件设置自定义字体?

以下是我的Text组件:

 Text.create(componentContext)
                .flexGrow(1f)
                .verticalGravity(VerticalGravity.CENTER)
                .text("MY APP")
                .textSizeDip(25)
                .textAlignment(Layout.Alignment.ALIGN_CENTER)
4

1 回答 1

3

要使用该typeface道具,您必须首先获取一个Typeface对象,如果您可以使用 Support Library v26,这会容易得多,它在 XML 中引入了字体ComponentContext……从您的方法内部甚至可以很简单地做到这一点onCreateLayout(尽管您可能希望缓存Typeface):

Text.create(c)
    .typeface(ResourcesCompat.getFont(
        c.getApplicationContext, R.font.my_cool_font)
    .text("Check out my cool font")
    .build()

Typeface.Builder如果您无权访问 Support v26,还可以使用一个类,它为您提供了一些关于如何指定所需字体的选项。

于 2017-11-17T18:46:13.147 回答